【LNMP】提示Nginx PHP “No input file specified”错误的解决办法
2017-07-20 09:58
921 查看
原理:
任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。
PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input file specified”
另外,还可能跟 路径或者 权限有关系,或者SCRIPT_FILENAME 变量没有被正确的设置(这在nginx是最常见的原因)。
解决办法:
1 打开文件: usr/local/php/etc/php.ini,修改以下配置
把cgi.fix_pathinfo=0 改为 cgi.fix_pathinfo=1
把 ;cgi.force_redirect=1 改为 cgi.force_redirect=0
2 修改文件权限
当执行的时候。如果个别项目里边有 .user.ini 文件。会提示
这时候需要 进入这个目录 执行
然后 进入到wwwroot目录 , 再执行权限命令,最后别忘了,进入www.test.com 目录,执行
最后重启
搞定!
补充:Linux chattr 命令,用于改变文件属性。
这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
a:让文件或目录仅供附加用途。
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:将文件或目录排除在倾倒操作之外。
i:不得任意更动文件或目录。
s:保密性删除文件或目录。
S:即时更新文件或目录。
u:预防以外删除。
-v<版本编号> 设置文件或目录版本。
-V 显示指令执行过程。
+<属性> 开启文件或目录的该项属性。
-<属性> 关闭文件或目录的该项属性。
=<属性> 指定文件或目录的该项属性。
会显示如下属性
让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在。
PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input file specified”
另外,还可能跟 路径或者 权限有关系,或者SCRIPT_FILENAME 变量没有被正确的设置(这在nginx是最常见的原因)。
解决办法:
1 打开文件: usr/local/php/etc/php.ini,修改以下配置
把cgi.fix_pathinfo=0 改为 cgi.fix_pathinfo=1
把 ;cgi.force_redirect=1 改为 cgi.force_redirect=0
2 修改文件权限
# cd /home/wwwroot # chown -R www:www ./* # chmod -R 755 ./* # lnmp restart
当执行的时候。如果个别项目里边有 .user.ini 文件。会提示
chown: changing ownership of ‘./www.test.com/.user.ini’: Operation not permitted
这时候需要 进入这个目录 执行
chattr -i .user.ini
然后 进入到wwwroot目录 , 再执行权限命令,最后别忘了,进入www.test.com 目录,执行
chattr +i .user.ini
最后重启
lnmp restart
搞定!
补充:Linux chattr 命令,用于改变文件属性。
这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
a:让文件或目录仅供附加用途。
b:不更新文件或目录的最后存取时间。
c:将文件或目录压缩后存放。
d:将文件或目录排除在倾倒操作之外。
i:不得任意更动文件或目录。
s:保密性删除文件或目录。
S:即时更新文件或目录。
u:预防以外删除。
语法
chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...]
参数
-R 递归处理,将指定目录下的所有文件及子目录一并处理。-v<版本编号> 设置文件或目录版本。
-V 显示指令执行过程。
+<属性> 开启文件或目录的该项属性。
-<属性> 关闭文件或目录的该项属性。
=<属性> 指定文件或目录的该项属性。
实例
用chattr命令防止系统中某个关键文件被修改:chattr +i /etc/resolv.conf
lsattr /etc/resolv.conf
会显示如下属性
----i-------- /etc/resolv.conf
让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
chattr +a /var/log/messages
相关文章推荐
- 运行PHP出现No input file specified错误的解决办法
- nginx运行php"No input file specified"错误的解决方法
- 运行PHP出现No input file specified错误的解决办法
- 运行PHP出现No input file specified错误的解决办法
- 运行PHP出现No input file specified错误的解决办法
- 配置Nginx支持php,出现No input file specified错误的解决方法
- 运行PHP出现No input file specified错误的解决办法
- PHP4和PHP5共存的环境(主力为PHP4)中PHP5在命令行跑PHP文件中遇到No input file specified.错误解决办法
- 运行PHP出现No input file specified错误的解决办法
- windows nginx+php 显示no input file specified的解决方法
- 解决NGINX PHP "No input file specified"
- 备忘:nginx访问不存在的php的页面提示No input file specified.
- 解决nginx服务器访问不存在的php页面显示No input file specified.问题
- Centos 6.5 Nginx,php 提示 No input file specified
- Windows7安装 nginx+php 后访问.php文件出现 “No input file specified.” 的解决办法
- Dreamhost 提示No input file specified. 的解决办法
- 解决NGINX PHP "No input file specified"
- 网站运行PHP出现No input file specified 的解决办法
- NGINX PHP FastCGI “No input file specified”错误
- Nginx执行php,No input file specified的解决方法