2012-01-25 22 views
16

¿Qué problema hay en la definición de mi servidor? Si trato de acceder a "www.testing.com" obtengo un binario para descargar en lugar de index.php, en cambio si trato de acceder a "testing.com" obtengo el index.php.No se puede abrir index.php de forma predeterminada con nginx

ya he tratado de establecer ServerName para:

servername testing.com; 
servername testing.com www.testing.com; 
servername testing.com www.testing.com *.testing.com; 

mismo comportamiento: No puedo conseguir con index.php "www.testing.com", sólo con "testing.com". (por supuesto, testing.com no es mío es solo por ejemplo).

user    nginx; 
    worker_processes 4; 
    error_log   /var/log/nginx/error.log warn; 
    pid    /var/run/nginx.pid; 

    events { 
     worker_connections 1024; 
    } 


    http { 
     include  /etc/nginx/mime.types; 
     default_type text/plain; 

     log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
          '$status $body_bytes_sent "$http_referer" ' 
          '"$http_user_agent" "$http_x_forwarded_for"'; 

     access_log /var/log/nginx/access.log main; 

     fastcgi_intercept_errors on; 
     sendfile     on; 
     keepalive_timeout   65; 
     gzip      on; 
     index      index.php index.html index.htm; 

     server { 
       listen 80; 
       server_name www.testing.com; 
       root /home/vhosts/testing; 

       location/{ 
        try_files $uri $uri/ /index.php index.php; 
       } 

     location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { 
        expires max; 
        add_header Pragma public; 
        add_header Cache-Control "public, must-revalidate, proxy-revalidate"; 
       } 

     location ~* \.php$ { 
       try_files $uri =404; 
       include fastcgi.conf; 
       fastcgi_pass 127.0.0.1:9000; 
       } 
     } 
    } 

Respuesta

-1

Puede tener más de una línea de nombre de servidor, configurará un VHOST en todas ellas.

+0

Quizás quiso decir que él ¿hipocresía? – Purefan

8

añadir fastcgi_index index.php; en location ~* \.php$

location ~* \.php$ { 
       try_files $uri =404; 
       include fastcgi.conf; 
       fastcgi_pass 127.0.0.1:9000; 
       fastcgi_index index.php; 
       } 
+1

+1 esto funcionó para mí, ¡gracias! – coma

18

primero que hay que verifica la configuracion de php-FPM (tal vez utilizando la conexión de socket en vez de puerto en la configuración de php-fpm) y añadir el índice por defecto en su ubicación "/"

location/{ 
    index index.php index.html index.htm; 
    try_files $uri $uri/ =404; 
} 
Cuestiones relacionadas