Laravel no nginx + php-fpm retorna a página em branco

1

Estou tendo este problema com o Laravel, que é atendido pelo nginx + php-fpm, que está apenas retornando uma página em branco. Nem nginx nem php nem laravel estão registrando quaisquer erros.

Ao executar o index.php com a CLI, ele retornará a página de boas-vindas.

A pilha de larvas é intocada, todos os relatórios / exibições / registros de erros estão ativados.

Abaixo está meu vhost nginx:

server {
    listen 801;
    server_name _;

    root /path/to/laravel/public;
    index index.html index.html index.php;

    charset utf-8;

    gzip                    on;
    gzip_http_version       1.1;
    gzip_disable            "MSIE [1-6].";
    gzip_vary               on;
    gzip_proxied            expired no-cache no-store private auth;
    gzip_comp_level         9;

    fastcgi_buffers         8 16k;
    fastcgi_buffer_size     32k;
    fastcgi_read_timeout    180;

    # serve static files directly
    location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ {
            access_log      off;
            expires         max;
    }

    location / {
            index  index.html index.htm index.php; #try static .html file first
            ##try_files $uri $uri/ /index.php;  <<Wrong!! this will break bundles like OneAuth for example
            try_files $uri $uri/ /index.php?q=$uri&$args;
    }

    # catch all
    error_page      404 /index.php;

    #set client_max_body_size
    client_max_body_size 25m;
    #set client_body_buffer_size
    client_body_buffer_size 128k;

    location ~ \.php$ {
            fastcgi_split_path_info         ^(.+\.php)(/.+)$;
            fastcgi_pass                    unix:/var/run/php-fpm.sock;
            fastcgi_index                   index.php;
            fastcgi_param                   SCRIPT_FILENAME   $document_root$fastcgi_script_name;
            include                         fastcgi_params;
    }
}

Meu problema é que o app / storage tinha permissões erradas. Então, se você receber os mesmos erros que eu, página em branco, tente chmod 0777 toda a pasta app / storage.

sudo chmod -R 0777 app/storage
    
por Raiu 23.01.2014 / 23:02

3 respostas

3

O OP declarou que sua solução de trabalho é sudo chmod -R 0777 app/storage .

Embora tenha solucionado o problema, nunca é a solução . A maneira correta é definir o grupo como www-data e dar permissão de gravação.

chown -R www-data app/storage
chmod -R 0770 app/storage

Para maiores detalhes sobre as permissões chmod 777 e em um servidor Linux, veja esta resposta: Que permissões meus arquivos / pastas do site devem ter em um servidor web Linux?

    
por 05.12.2014 / 15:05
0

Tente alterar o argumento "try_files" para o seguinte:

try_files $uri $uri/ /index.php?$args;
    
por 23.01.2014 / 23:04
-2

Meu problema é que o app / storage tinha permissões erradas. Então, se você receber os mesmos erros que eu, página em branco, tente chmod 0777 toda a pasta app / storage.

sudo chmod -R 0777 app/storage
    
por 24.01.2014 / 17:27