欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

nginx 配置 PHP,访问提示 file not found; (日志报错:Primary script unknown)

程序员文章站 2024-02-22 11:33:35
...

安装PHP和nginx 、完成nginx配置后。页面访问提示:file not found;

查看nginx日志显示:

2021/01/26 10:50:36 [error] 193466#0: *6 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 10.56.XX.XX, server: loca
lhost, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "XXXXXX"

在网上搜索,很多都是说因为 nginx 和php 指定用户不一定导致的。
nginx.conf 第一行 指定用户 user www;(指定用户 www ):
nginx的location配置(正确配置):

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include         fastcgi_params;
            fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;  
            fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
        }

指定php 用户也为www 后,仍然报错。

经过排查原因为:安装服务时,使用的 root 用户导致nginx只有root用户有权限,其他用户服务无法访问。更改nginx安装目录权限(chmod -R 755 /usr/local/nginx )后正常。