鼓捣 nginx1.14+php-5.3.10+Ubuntu 都几天依然没有成功
访问 localhost/phpinfo.php后:
           nginx的access.log有反应
           php的 /usr/local/php/var/log/www.acccess.log也有反应
 例如其中一条:127.0.0.1 -  09/Feb/2012:04:51:16 +0800- 200 /www/phpinfo.php 0.481 512 0.00%  文件路径是对的
但问题是页面没有显示,只是返回了HTTP信息,且是200 ok,而错误日志里并没有什么变化
我随后修改了代码,增加了一个sleep(10) 来看看程序有没有被执行,结果是没有执行,立即返回信息。然而就是有php的访问日志变化,这太让我想不明白了,既然PHP都有检测到访问,那为啥不执行

解决方案 »

  1.   

    检查php的error_log,可能是你的phpinfo.php本身有什么问题,或者是权限问题。如果是php-fpm不工作,nginx会报bad gate的。
      

  2.   

    简单执行下<?php phpinfo();?>看正常否。看是不是你的代码有问题 。
      

  3.   

    可能是nginx1.14没有加载运行php的模块!
      

  4.   

    ps -e | grep "php" 
    有php-fpm吧?
    你的phpinfo.php只写一行<?php echo 1; ?>,不要phpinfo(),也不会显示么?
      

  5.   

    # ps -e | grep "php"
     8263 ?        00:00:00 php-fpm
     8264 ?        00:00:00 php-fpm
     8265 ?        00:00:00 php-fpm
    但凡是访问php文件都不会显示什么,但php/var/log/www.access.log会有记录,这是最诡异的。而我直接访问localhost:9000 (php-fpm的监听端口)会提示101错误,即连接被重置。防火墙造成的?
      

  6.   

    没遇到类似问题不好说啊
    不过建议你分别在nginx.conf和php-fpm.conf文件里设置下error_log,查看日志看有无错误信息