7oi76i 发表于 2016-7-12 09:11:25

LNMP环境No input file specified.的解决方法

                      有时候安装好了LNMP环境,测试访问php页面时候报错“No input file specified”。F12查看,可以看到报错404找不到页面。

原理:
任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input file specified”


我们只要修改下nginx虚拟主机的配置文件即可,关键部分如下:

      location ~ \.php$ {
            root         /home/wwwroot/default;
            fastcgi_passunix:/tmp/php-cgi.sock;
            fastcgi_indexindex.php;

            # 方法1
            fastcgi_paramSCRIPT_FILENAME $document_root$fastcgi_script_name;            includefastcgi_params;


            # 方法2
            #includefastcgi.conf;
      }   

上面的方法1 和方法2都行,启用任意一个即可(实际上fastcgi.conf里面就是比fastcgi_params里面多了一行代码,感兴趣的自己可以看下)

然后保存重启nginx即可正常访问php页面了。

                   

页: [1]
查看完整版本: LNMP环境No input file specified.的解决方法