【问题标题】:White Page After Installing PHP NGINX安装 PHP NGINX 后的白页
【发布时间】:2014-11-18 18:57:17
【问题描述】:

我已经查看了大约 25 个关于此问题的不同教程和主题以及安装应该如何进行,但我仍然收到此错误。

每当我在安装 php5-fpm 并坐在 NGINX 旁边后访问 PHP 页面时,它都会呈现一个没有错误消息的白色页面,还要注意在 /var/log/NGINX 中,日志是空。

我的虚拟主机配置如下:

location ~ \.php$ {
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_intercept_errors on;
    include /etc/nginx/fastcgi_params;
}

我的 www.conf 除了使用默认参数外,还使用以下参数:

listen = /var/run/php5-fpm.sock

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

user = www-data
group = www-data

任何帮助表示赞赏!我也尝试过使用 TCP 端口而不是套接字,并且我已经检查了“fastcgi_params”文件的位置,它应该在哪里。

【问题讨论】:

  • 白页常表示nginx工作正常,php-fpm失败。否则你会从服务器收到 500 或超时错误。你的 PHP 坏了吗?尝试加载一个简单的
  • @DavidChan 我认为 PHP 坏了,因为我使用了一个简单的 .html 页面并将其更改为 .php,它也只是加载了一个空白页面。
  • 为了确定,您已经通过运行以下命令重新启动了 php-fpm: service php5-fpm restart ?
  • @nullReference Yessir!
  • 尝试从命令行运行 php 以确保其安装正确...检查 PHP 日志

标签: nginx php


【解决方案1】:

我的配置中的位置:

location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $request_filename;
    include fastcgi_params;
}

我有同样的问题,直到我添加了这个:fastcgi_param SCRIPT_FILENAME $request_filename;

【讨论】:

  • 我在使用这个之后又遇到了另一个错误,基本上说它没有足够的权限来获取文件,所以我以 sudo 用户身份运行 NGINX,它再次加载了一个白页,但是如果我加载一个包含实际 PHP 脚本的文件,它最终会超时。
  • 您将 /etc/php5/fpm/php.in 中的 cgi.fix_pathinfo 更改为零?
  • Oups.. 现在我看到解决了您的问题。
【解决方案2】:

希望这些会有所帮助。它们是我在 nginx/php-fpm 的开发服务器上运行的当前配置设置。如果这没有帮助,您可以尝试在 serverfault 上发布一些内容:

www.conf

[www]

user = www-data
group = www-data

listen = /var/run/php5-fpm.sock

listen.owner = www-data
listen.group = www-data

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

chdir = /

php-fpm.conf

[global]
pid = /var/run/php5-fpm.pid
error_log = /var/log/php5-fpm.log
include=/etc/php5/fpm/pool.d/*.conf

虚拟主机配置

server {

    listen 80;

    root /sites/jason/site.com/public;

    index index.php index.html index.htm;

    server_name jason.site.com;

    # Catch all
    error_page 404 /index.php;

    location ~ \.php$
    {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /sites/jason/jason.site.com$fastcgi_script_name;
        fastcgi_param SITE_URL jason.site.com;
        fastcgi_param SITE_DIR /sites/jason/jason.site.com;
        include fastcgi_params;
    }

}

并且记得在修改文件后重启 nginx 和 php-fpm:

service nginx restart
service php5-fpm restart

【讨论】:

  • 在比较我们的配置并更改我们的配置之间的微小差异后仍然相同:/
猜你喜欢
  • 2014-01-08
  • 1970-01-01
  • 1970-01-01
  • 2019-05-19
  • 2015-01-27
  • 1970-01-01
  • 1970-01-01
  • 2013-03-03
  • 1970-01-01
相关资源
最近更新 更多