“主要脚本未知”PHP

时间:2016-03-29 07:47:57

标签: php nginx

我正在尝试在我的机器中使用PHP。我有nginx服务器运行其他几个服务器。

由于对如何使用PHP的好奇心,我试图安装php-cli和php5-fpm。

下面的nginx文件似乎有效,但是在前端我得到错误“404”。当我检查错误日志时,我发现了错误

Fatal error: Call to a member function query() on null 
 in public_html/retrieve1.php on line 24

所以我假设我的php5-fpm配置错误或我的nginx配置错误。

这是我的nginx配置文件:

"2016/03/29 14:28:50 [error] 19752#0: *1 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: ::1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "localhost:84"

我从Digital Oceans跟随以下link并跳过几步安装MySQL,因为我将使用psql。

任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

我不能立即看到你的nginx配置有什么问题,但是我发现PHP-FPM和Nginx在配置时真的很有气质...试试下面的Nginx配置...

server {
    listen 84 default_server;
    listen [::]:84 default_server ipv6only=on;
    root /usr/share/nginx/html;
    index index.php index.html index.htm;

    server_name _;

    location / {
        index index.php index.html index.htm;
        root /home/sijan/personal/php_site;
    }

    location ~ \.php$ {
        try_files $uri =404;

        fastcgi_index                           index.php;
        fastcgi_pass                            unix:/var/run/php5-fpm.sock;
        fastcgi_connect_timeout                 10;
        fastcgi_send_timeout                    180;
        fastcgi_read_timeout                    180;
        fastcgi_buffer_size                     512k;
        fastcgi_buffers                         4       256k;
        fastcgi_busy_buffers_size               512k;
        fastcgi_temp_file_write_size            512k;
        fastcgi_intercept_errors                on;
        fastcgi_split_path_info                 ^(.+\.php)(/.*)$;
        fastcgi_keep_conn                       on;
        include fastcgi_params;
    }
}

另外,不要忘记您的Nginx服务器正在配置中的端口84上侦听,而不是标准端口80.