Failed opening required или что nginx передает на FastCGI?

Алексей Сундуков public-mail at alekciy.ru
Tue Jul 14 14:50:00 MSD 2009


Получаю в логе ошибок такое вот сообщение:

2009/07/14 14:35:46 [error] 15758#0: *2 FastCGI sent in stderr: "PHP
Warning:  Unknown: Filename cannot be empty in Unknown on line 0
PHP Fatal error:  Unknown: Failed opening required ''
(include_path='.:/usr/local/lib/php') in Unknown on line 0" while
reading response header from upstream, client: ***, server: site.ru,
request: "GET /info.php HTTP/1.1", upstream: "fastcgi://***:9001",
host: "site.ru"

Как я понимаю nginx не передает на FastCGI SCRIPT_FILENAME. Как можно
выяснить, почему так просходит? Я задал запись лога test из которого
видно, что $fastcgi_script_name=/info.php, а
$document_root=/home/www/alekciy/site.ru. Конфиг:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
user www www;
worker_processes  1;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

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

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;

    gzip  on;
    log_format main     '$remote_addr - $remote_user [$time_local] '
                        '"$request" $status $bytes_sent '
                        '"$http_referer" "$http_user_agent" '
                        '"$gzip_ratio"';
    log_format test '$fastcgi_script_name $request_uri $document_uri
$document_root';

server {
        listen          80;
        server_name     site.ru;
        access_log      /home/www/alekciy/httpd-1.log test;

        location / {
                root    /home/www/alekciy/site.ru;
                index   index.php index.html index.htm;
        }

        location ~ \.php$ {
                fastcgi_pass    ***:9001;
                root            /home/www/alekciy/site.ru;
                fastcgi_index   index.php;
                fastcgi_param   SCRIPT_FILENAME
/home/www/alekciy/site.ru$fastcgi_script_name;
                include         fastcgi_params;
        }

}


}
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - -

nginx версии 0.6.32, статика отдается корректно.





More information about the nginx-ru mailing list