Здравствуйте, господа. Имеется связка Nginx + PHP7-FPM. При попытке открыть несуществующий файл test.php (http://example.com/test.php) получаю в браузере сообщение «File not found». При этом в /var/log/nginx/error.log появляется следующее:
2018/01/16 21:53:04 [error] 10214#10214: *21 FastCGI sent in stderr: «Primary script unknown» while reading response header from upstream, client: 192.168.0.104, server: example.com, request: «GET /test.php HTTP/1.1», upstream: «fastcgi://unix:/var/run/php/php7.0-fpm_example.com.sock:», host: «example.com»
При этом существующие php-файлы открываются исправно, без вывода чего-либо в /var/log/nginx/error.log.
В чём может быть дело? Предполагалось, что при обращении к несуществующему php-файлу (как и к любому другому несуществующему файлу), Nginx выдаст в браузере ошибку 404, а в /var/log/nginx/error.log будет записано сообщение об отсутствии запрашиваемого файла вроде этого:
2018/01/16 22:20:03 [error] 10642#10642: *11 open() «/home/example.com/www/test.php» failed (2: No such file or directory), client: 192.168.0.104, server: example.com, request: «GET /test.php HTTP/1.1», host: «example.com»
Ниже прилагаю конфиг /etc/nginx/sites-available/example.com.conf:
server {
server_name example.com;
root /home/example.com/www;
listen 80;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log error;
location ~ \.php$ {
fastcgi_param SERVER_SIGNATURE nginx;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param SERVER_NAME $server_name;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param SERVER_ADMIN admin@$server_name;
fastcgi_param HTTPS $https if_not_empty;
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param DOCUMENT_ROOT $document_root/;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param REDIRECT_STATUS 200;
fastcgi_param REDIRECT_QUERY_STRING $query_string;
fastcgi_param REDIRECT_URL $request_uri;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param REMOTE_USER $remote_user;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.0-fpm_example.com.sock;
}
}