No puedo hacer que php-fpm con Nginx funcione

No puedo hacer que php-fpm con Nginx funcione

Servidor: CentOs x86_64

/etc/php-fpm.d/webuser1.conf

[webuser1]
listen = 127.0.0.1:9001
listen.allowed_clients = 127.0.0.1
user = webuser1
group = webuser1

pm = dynamic
pm.max_children = 15
pm.start_servers = 3
pm.min_spare_servers = 1
pm.max_spare_servers = 5
pm.max_requests = 2000

request_slowlog_timeout = 5
slowlog = /home/webuser1/tmp/logs/webuser1.slow.log

php_admin_value[error_log] = /home/webuser1/tmp/logs/webuser1.error.log
php_admin_flag[log_errors] = on

/etc/nginx/conf.d/web1.conf

server {
listen       80;
server_name  c64p1.v.lab.gavika.com;

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {
    root   /home/webuser1/www/public;
    index  index.html index.htm index.php;
}

error_page  404              /404.html;
location = /404.html {
    root   /usr/share/nginx/html;
}

# redirect server error pages to the static page /50x.html
#
error_page   500 502 503 504  /50x.html;
location = /50x.html {
    root   /usr/share/nginx/html;
}


# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9001;
    fastcgi_index  index.php;
#   fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

}

En los registros de Nginx, tengo:

2013/05/18 15:21:52 [error] 2943#0: *1 FastCGI sent in stderr: "Primary script unknown"     while reading response header from upstream, client: 192.168.122.1, server: c64p1.v.lab.gavika.com, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9001", host: "c64p1.v.lab.gavika.com"

¿Cómo puedo hacer que esto funcione?

Respuesta1

Has colocado tus rootdirectivas en los lugares equivocados.

rootdebe definirse en el serverbloque, no en cada locationbloque. éste es uno deErrores de configuración más comunes de nginx.

Para resolver el problema, elimine todas las rootdirectivas de cada locationbloque y coloque la rootdirectiva correcta dentro del serverbloque, no dentro de ninguno location.

Respuesta2

¿Puedes compartir qué encabezados estás probando y que te dan estos resultados? ¿Parece que simplemente está realizando una solicitud de obtención de raíz (/) a través de un navegador?

Sin más información sobre los encabezados de entrada o cómo está probando su configuración, lo más probable es que tenga un problema de ubicación en su configuración.

Mis dos consejos son:

1) Consulte las páginas de ayuda sobre las ubicaciones de Nginx. Wiki Nginx (http://wiki.nginx.org/Configuration) es un buen lugar si estás empezando. Además, la cartilla de Martin Fjordvald (http://blog.martinfjordvald.com/2010/07/nginx-primer/) es bueno en configuraciones de ubicación.

2) Si tuviera problemas para que mi configuración c64p1.v.lab.gavika.com funcionara, recurriría a una configuración Nginx simple basada en un servidor localhost y haría que la configuración localhost funcionara primero.

información relacionada