原理:

任何对.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种模式:

  1. a:让文件或目录仅供附加用途。
  2. b:不更新文件或目录的最后存取时间。
  3. c:将文件或目录压缩后存放。
  4. d:将文件或目录排除在倾倒操作之外。
  5. i:不得任意更动文件或目录。
  6. s:保密性删除文件或目录。
  7. S:即时更新文件或目录。
  8. 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

【LNMP】提示Nginx PHP “No input file specified”错误的解决办法的更多相关文章

  1. Nginx+PHP “No input file specified”错误的解决办法

    配置官网商城php网站时候,界面报错“No input file specified” 原理: 任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在. PHP文件 ...

  2. nginx下No input file specified错误的解决

    在web服务的根目录下创建 .htaccess文件,设置一下内容: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond % ...

  3. 执行shell脚本时提示bad interpreter:No such file or directory的解决办法

    执行shell脚本时提示bad interpreter:No such file or directory的解决办法 故障现象:在终端直接cd /var正常,在shell脚本中执行则报错.原因是脚本是 ...

  4. 织梦CMS提示DedeTag Engine Create File False错误的解决办法总结

    今天帮客户升级站点,遇到了一个老问题,生成栏目的时候提示"DedeTag Engine Create File False",突然发觉这个问题竟然在以前做站的时候困扰过我多次,于是 ...

  5. 执行Hive时出现org.apache.hadoop.util.RunJar.main(RunJar.java:136) Caused by: java.lang.NumberFormatException: For input string: "1s"错误的解决办法(图文详解)

    不多说,直接上干货 问题详情 [kfk@bigdata-pro01 apache-hive--bin]$ bin/hive Logging initialized -bin/conf/hive-log ...

  6. YUM安装东西提示PYCURL ERROR 6 - "Couldn't错误的解决办法

    执行yum install命令时提示PYCURL ERROR 6 - "Couldn't resolve host 错误,原来是dns设置出错,具体错误代码:  Loaded plugins ...

  7. vetur插件提示 'v-for' directives require 'v-bind:key' directives.错误的解决办法

    在用vscode编写vue代码时,因为安装的有vetur插件,所以当代码中有v-for语法时,会提示 [vue-language-server] 'v-for' directives require ...

  8. linux执行shell脚本时提示bad interpreter:No such file or directory的解决办法

    故障现象:在终端直接cd /var正常,在shell脚本中执行则报错.原因是脚本是在windows平台下写的,换行符与Linux不同,造成脚本不能正确执行 出现bad interpreter:No s ...

  9. Error:/etc/fstab:Read-only file system错误的解决办法

    1.挂载60T存储,设置开机自动挂载,UUID编号配置错误导致系统无法启动 2.根据提示进入维护状态,输入root密码,进入fstab删除UUID等内容,结果报错     Error:/etc/fst ...

随机推荐

  1. Tomcat启动报Error listenerStart错误 Context [] startup failed due to previous errors

    本文转载自xpenxpen 今天启动Tomcat启动不了,报以下错: org.apache.catalina.core.StandardContext startInternal SEVERE: Er ...

  2. Linux内核 GPIO操作部分API

    内核中关于GPIO的操作API主要集中在<linux/of_gpio.h>和<linux/gpio.h>中,前者主要是GPIO直接与设备树相关的操作,在Linux 设备树操作A ...

  3. linux远程安装和使用

    Putty:一个Telnet.SSH.rlogin.纯TCP以及串行接口连接软件,体积小.完全免费.使用方便快捷,基本的功能都有.有点不好的地方:在一界面上一次只能打开一个窗口,对于快速查看和操作不太 ...

  4. C - Monthly Expense

    Farmer John is an astounding accounting wizard and has realized he might run out of money to run the ...

  5. linux 下实用软件工具推荐

    截图:Deepin-Screenshot 音乐:deepin-music netease-music 绘图工具:Draw.io Desktop (chrome extension) / www.pro ...

  6. jquery-1.11.2.min.js

    /*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ !function(a,b){& ...

  7. [No0000133]c# ERROR:“.”(十六进制值 0x00)是无效的字符

    December 24, 2013 c# exception “.”(十六进制值 0x00)是无效的字符. 解决方法:常见于socket方式连接(包括HTTP方式)等.报文交互时候,对方会在字符串后面 ...

  8. [No0000130]WPF 4.5使用标记扩展订阅事件

    自从我上次写到关于标记扩展的时候已经有一段时间了...... Visual Studio 11 Developer Preview的发布给WPF带来了一些新功能,让我有理由再次使用它们.我要在这里讨论 ...

  9. nginx伪静态之try_files和rewrite讲解

    服务器脚本以php为例     一.伪静态是个啥?   1.说起伪静态基本上搞web开发的人,多多少少都有了解与使用,有人会说什么时候会使用伪静态?使用原生的url地址不是蛮好的吗,确实是这样的,其实 ...

  10. http协议-https协议-相对协议

    http协议.https协议.相对协议 http://www.baidu.com (使用http协议访问百度) https://wwww.badu.com (使用https协议访问百度) //www. ...