Você se esqueceu de declarar root
em seu bloco server
. Você só tem repetido em alguns location
blocos. Este é um dos misconfigurations nginx mais comuns . Mova-os para o bloco server
.
Tenho muita experiência com Apache
, mas queria mudar para Nginx
para tentar ganhar experiência com um software muito popular. Infelizmente eu não cheguei muito longe e esse problema está me deixando louco.
Após colocar uma página de teste (apenas uma simples): echo "This is Nginx";
Eu descomprimai meu arquivo .tar.gz
e carreguei todos os arquivos da web no diretório - eu também verifiquei as permissões, btw. Infelizmente tudo que eu posso ver ainda é "Isto é Nginx"
Até agora eu tenho:
Nginx
reiniciado
php5-fpm
(sim, eu sei que existem várias maneiras para diferentes sistemas, tentei todos eles) nginx.conf
Meu bloco de servidores é o seguinte:
server {
listen 80;
server_name xxx;
access_log /var/log/nginx/localhost.access.log;
## Default location
location / {
root /srv/www;
index index.php;
}
## Images and static content is treated different
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
access_log off;
expires 30d;
root /srv/www;
}
## Parse all .php file in the /var/www directory
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
## Disable viewing .htaccess & .htpassword
location ~ /\.ht {
deny all;
}
}
Meu arquivo nginx.conf
é o mesmo padrão, menos a mudança SendFile apontada acima. Qualquer ajuda que alguém possa oferecer seria muito apreciada.
Você se esqueceu de declarar root
em seu bloco server
. Você só tem repetido em alguns location
blocos. Este é um dos misconfigurations nginx mais comuns . Mova-os para o bloco server
.