Skip to content

Instantly share code, notes, and snippets.

@Sigmus
Last active August 29, 2015 13:56
Show Gist options
  • Save Sigmus/8790917 to your computer and use it in GitHub Desktop.
Save Sigmus/8790917 to your computer and use it in GitHub Desktop.
Guia instalação Laravel 4.1

Instalando Laravel 4.1

Requisitos mínimos

  • PHP >= 5.3.7
  • MCrypt PHP Extension
  • MySQL 5 com PDO_MYSQL
  • Composer (package manager)

Passos

1. Copie toda a estrutura do app para um diretório

Dê checkout do projeto em um diretório adequado do seu servidor. Vamos considerar este diretório como /projeto no restante deste tutorial.

2. Instale o composer

Composer é um instalador de pacotes do PHP. Acesse http://getcomposer.php e siga as instruções para o seu sistema operacional.

3. Instale o framework com o composer

Na pasta raiz (/projeto) digite composer install

4. Configure um VirtualHost apontando para o diretório /projeto/public.

Atenção neste passo: É um erro muito comum a configuração do servidor apontando para /projeto ou /projeto/app. A pasta correta (que será a raiz do que é acessado pelo navegador) é /projeto/public.

5. Edite o arquivo /projeto/bootstrap/start.php

Na bloco de código que começa com $env = $app->detectEnvironment será necessário criar um novo ambiente (enviroment). Ambientes permitem que o mesmo código possa ser executado em servidores diferentes (teste, homologação, produção, etc). O que define um ambiente é da máquina onde ele roda. Acesse a linha de comando e digite hostname. O nome retornado (funciona em ambientes Linux, Mac e Windows) é o que será utilizado na configuração:

$env = $app->detectEnvironment(array(
    'ambiente_exemplo' => array('maquina_exemplo'),
));

Importante: somente adicione items neste array, não apague ou modifique outros ambientes previamente cadastrados (a não ser que você saiba exatamente o que está fazendo).

6. Crie e configure o banco de dados

A configuração do Laravel funciona da seguinte maneira:

  1. Todos os arquivos localizados em /projeto/app/config são lidos e computados
  2. O enviroment é detectado pelo nome da máquina (configurado no passo anterior)
  3. Todos os arquvios do diretório /projeto/app/config/ambiente_exemplo são lidos. As configurações novas são incluídas. Se houver coincidência de chaves (como vai ocorrer com o banco de dados) estas configurações serão vão sobrepor as anteriores (gerais).

Portanto, é necessário criar /projeto/app/config/ambiente_exemplo/database.php com as configurações do banco de dados deste ambiente:

<?php
return array(
	'connections' => array(
		'mysql' => array(
			'driver'    => 'mysql',
			'host'      => 'localhost',
			'database'  => 'projeto',
			'username'  => 'root',
			'password'  => 'root',
			'charset'   => 'utf8',
			'collation' => 'utf8_unicode_ci',
			'prefix'    => '',
		),
	),
);

Repare que não é necessário repetir o /projeto/app/config/database.phpinteiro, somente o que é específico do ambiente.

7. Crie e dê permissão de escrita em /projeto/app/storage

O projeto gera uma série de arquivos como logs, cache, sessões, etc, e precisa ter permissão de escrita para fazê-lo. Certifique-se que o usuário que controla o PHP consiga escrever em /projeto/app/storage e todos os subdiretórios dentro deste. Crie os seguintes diretórios, também com permissão de escrita:

/projeto/app/storage/cache
/projeto/app/storage/logs
/projeto/app/storage/meta
/projeto/app/storage/sessions
/projeto/app/storage/views
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment