nginx和php-fpm - php请求返回404

时间:2015-11-18 14:03:48

标签: php nginx

请求http://server-ip时,会返回默认的“欢迎使用nginx”页面。

请求http://server-ip/phpinfo.php时返回404。错误日志中没有错误,但访问日志中的GET 404

如果从conf中删除了location ~ \.php$,那么phpinfo.php会在请求时作为文件下载

设置

apt-get install nginx
apt-get install php5-fpm php5-mysqlnd

CONF

server {
    listen      80;
    server_name localhost;

    location / {
        root        /var/www;
        index       index.php index.html index.htm;
        try_files   $uri $uri/ =404;
    }

    location ~ \.php$ {
        try_files       $uri =404;
        include         fastcgi_params;
        fastcgi_pass    unix:/var/run/php5-fpm.sock;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

php cli

这可以按预期工作

php -f /var/www/phpinfo.php

的php-fpm的

# ps aux | grep php-fpm
root      1555  0.0  0.1 183508 20976 ?        Ss   16:20   0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)
www-data  1557  0.0  0.0 183508  7152 ?        S    16:20   0:00 php-fpm: pool www           
www-data  1558  0.0  0.0 183508  7152 ?        S    16:20   0:00 php-fpm: pool www           
root      1932  0.0  0.0  12720  2080 pts/0    S+   16:23   0:00 grep php-fpm

nginx版本

# nginx -v
nginx version: nginx/1.8.0

2 个答案:

答案 0 :(得分:0)

PHP与nginx的集成方式与Apache相同。您需要单独启动PHP守护程序。

sudo service php5-fpm restart

See here了解详情。

答案 1 :(得分:0)

使用来自nginx 1.6.3的conf文件后,它可以工作:)