terça-feira, 10 de dezembro de 2013

Conhecendo Frameworks : Laravel - Instalação

Olá,

Estou procurando Frameworks PHP para aprender. Após pesquisar alternativas, me senti tentado a experimentar Laravel. O Quickstart a princípio é bem apelativo, faz a configuração parecer uma moleza.

De fato, a instalação e configuração inicial é bem mais complicada do que a página sugere, e aqui vou descrever os passos que eu utilizei. Nos próximos posts vou comentar a minha experiência utilizando o Laravel.

O Laravel é instalado utilizando o Composer, que verifica as dependências necessárias para o Framework funcionar e prepara o ambiente. Conforme instruções no site da ferramenta, a instalação é bem simples, utilizando dois comandos:

$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer

Caso o curl ainda não tenha sido instalado na sua máquina (geralmente no Ubuntu ele não vem instalado por default), você pode instalar o curl (ou usar o wget) no Ubuntu com o comando:

$ sudo apt-get install curl

O comando $ mv composer.phar /usr/local/bin/composer faz com que composer.phar seja renomeado para composer e o grava na pasta /usr/local/bin , tornando o comando composer disponível a partir de qualquer pasta. A partir do comando composer que será instalado o Laravel.

Criei o meu projeto dentro de /var/www e o chamei de "first". Lembre-se de alterar o texto "first" para o seu nome de projeto desejado.

$ cd /var/www
$ composer create-project laravel/laravel first --prefer-dist

Este último comando é bem demorado, não estranhe se demorar para você também.

É esperado que se você está tentando instalar um framework PHP, você já tenha instalado o PHP. Os comandos anteriores não iriam funcionar caso o php não estivesse instalado. Na instalação do Laravel o Composer avisará caso falte um requisito.  No meu caso o composer apresentou a seguinte mensagem:

Laravel requires the Mcrypt PHP extension

Isso foi resolvido com :

$ sudo apt-get install php5-mcrypt
$ sudo service apache2 restart

No entanto, também foi necessário habilitar o mod_rewrite do php, que permite as URL amigáveis. Para tal, foram necessários os comandos:

$ sudo a2enmod rewrite
$ sudo service apache2 restart

O projeto criado está disponível para o browser no endereço http://localhost/first/public/. De modo a evitar a necessidade da digitação da pasta public após o nome do projeto, criaremos um Virtual host no Apache. Isto se faz criando o arquivo /etc/apache2/sites-available/first com o conteúdo abaixo:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName first.dev
    ServerAlias *.first.dev
    DocumentRoot /var/www/first/public
</VirtualHost>

e então acrescente a linha 

127.0.0.1       first.dev

ao arquivo /etc/hosts.

Agora adicione um link virtual de /etc/apache2/sites-available/first para /etc/apache2/sites-enabled com o comando:

$sudo a2ensite first

e reinicie o apache

$ sudo service apache2 restart

Com o virtual host configurado você está pronto para ver o "Hello World" do Laravel através do endereço http://first.dev/ :

Agora é voltar para o Quickstart do Laravel e testar o Framework.

Opinião Final

O processo de instalação foi bem mais complicado (e um pouco chato) do que aparentava ser, mas não é nada do outro mundo, com rápidas consultas ao Google é possível superar as dificuldades. Espero que este Framework realmente seja tão fácil de usar quanto parece. Escreverei mais a respeito nos próximos posts.

Configuração:

  • Ubuntu 12.04
  • Apache 2.2.22
  • PHP 5.3.10-1