10
respostas

Como fazer o deploy do projeto

Eu terminei uma versão pra testar o projeto e preciso agora jogá-lo pro meu servidor.

Não vi este tópico no curso, acabei seguindo um vídeo que achei no Youtube mas não rolou. Alguém poderia me dar um auxílio?

Uso o Laravel 5.0 Obrigado!

10 respostas

Oi Marcelo, tudo bem? A questão do deploy depende um pouco de onde você vai deployar, onde é exatamente? Qual o servidor ou serviço que você tá utilizando?

Eu subo minhas aplicações direto por FTP.

Neste caso, estou usando a hospedagem da Hostnet.

Não sei se o hostnet pega o diretório público do laravel, mas se não pegar, você pode criar um index na raiz, incluir o index que tá dentro de public e pronto. O SQL talvez você precise exportar e importar lá...

Você tem acesso SSH?

Consigo acesso SSH.

O banco já está ok, com as tabelas e tudo mais.

No servidor? O acesso SSH era só para você poder executar as migrations no servidor. Você pode subir os arquivos via FTP mesmo inicialmente. Depois disso, você precisa fazer mais o que? Deu algum erro ao acessar o projeto?

da erro 500 quando tento acessar a raiz.

fiz algumas alterações no index.php que vi nuns forums, mas ainda nao rolou. O lance é que minha aplicação vai ficar em um subdiretorio. Não estou sabendo como lidar.

O que eu já fiz: 1- criei a pasta instituicao dentro da minha pasta www 2- coloquei os arquivos do public_html, do meu projeto, soltos dentro desta pasta 3- nesta mesma pasta criei outra chamada laravel e todos os demais arquivos do framework coloquei dentro dela 4- modifiquei meu arquivo index.php pra isso: obs. o comentado era o original

/*require __DIR__.'/../bootstrap/autoload.php';*/
require __DIR__.'/../laravel/bootstrap/autoload.php';

/*$app = require_once __DIR__.'/../bootstrap/app.php';*/
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';

Mas ainda recebo erro 500 .....

Este é o .htaccess da pasta www

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Sabem o que pode estar havendo?

Gostei muito do curso e do framework, mas esse problema pra o deploy esta me tirando o sono...

Oi Marcelo, tudo bom?

Trabalhar com o laravel em sub-pastas pode ser um pouco complicado mesmo. Tenta indicar no seu htaccess o diretorio do seu projeto:

DirectoryIndex seuProjeto/index.php
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ seuProjeto/index.php [L]

    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

Além disso, lembra de limpar seu projeto pelo ssh:

php artisan clear-compiled

Qualquer problema, compartilha com a gente =)

Oi, André, obrigado pelo retorno!

Este htaccess é o da pasta raiz da hospedagem? No caso, a www?

Exatamente =)