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

2019-09-18 15:07:24 浏览数 (1)

有时候安装好了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_pass  unix:/tmp/php-cgi.sock;

            fastcgi_index  index.php;

            # 方法1  

            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include  fastcgi_params;

            # 方法2

            #include  fastcgi.conf;

        }   

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

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

0 人点赞