2020-03-24 21:41:01
由于某些原因,服务器重启了,然而重启之后,再次访问居然报404错了:No input file specified.nginx配置没有动过,怎么会无缘无故出现这个问题呢?
这个其实是很常见的错误,百度随便一搜就有好多的答案,解决问题的方案都是重新配置nginx,使它能正确找到php文件。这个也是我早就知道的,既然发了这篇文章,就说明用那些方法不能解决,或者就不是nginx配置方面的问题。那么还有什么原因造成这个现象呢?
nginx做了虚拟主机配置,访问其他的站点,更奇怪的是有些可以访问,有些也报404.总结了下规律,发现如果index到html等静态文件,就没有问题,如果index到php文件,那就不行了。
不知道什么原因的话,那就控制变量一步一步来吧。
首先在根目录下建一个文件:a.php,写个简单的输出hello world的程序。
<?php
echo "hello world" ;
然后试着访问下http://chenqinghe.com/a.php。不行,还是报404.
再建个文件:1.txt,随便打些内容,再次访问。正常返回了!
这就奇怪了,nginx配置没有改过,肯定是能够找到php文件的,那为什么还不行呢?
又搜了下,发现了这篇文章:Nginx报 No input file specified. 的问题解决之路(http://m.aliyun.com/yunqi/articles/34240)
我立马看了下根目录下面有没有.user.ini文件,让人失望的是,没有发现……
无奈之下想到了杀手锏strace,之前用来追踪mysql长连接时用过,可以看进程的系统调用。那用strace追踪一下看看咯,设置php-fpm为静态模式,子进程数量固定为1,然后用strace追踪这个子进程,然后访问网址,观察调用情况。
sudo strace -p 2773 -s 1000 //绑定pid为2773的进程,设置字符串长度为1000
然后发现了些猫腻:
原来是open_basedir捣的鬼!!这个php.ini中的设置会把打开文件目录限定在设置的目录内,如上图红框内所示,不在这个目录里,就不允许访问,所以会报这个错。在php.ini中把这项注释了之后,正常了!
那么为什么重启服务器之后会这样呢?后来仔细想想,之前在用/dev/urandom生成真随机数的时候设置的,那时候设置完了之后只在命令行下执行了php的命令,也就是只用了cli这个sapi,并没有重启php-fpm,所以当时没有发现这个问题,这次重启服务器之后,这个问题就暴露了出来,果然是个大坑啊……
这篇文章主要记录了排查错误的方式,更多的时候这些排查方式比解决方案更有用,所以记录下来。
Nginx HTTP2配置教程
06-23
Nginx配置basic_auth密码验证
06-13
USB接口无法识别设备的解决方法
06-23
Ubuntu 16.04配置Nginx使用GeoIP
07-12
wordpress重定向循环的几种解决方法
07-23
【工作】Nginx 实现域名的登录验证功能
07-04
解决Win8应用商店出现0x80073cf9错误
06-29
Dockerfile参考(11) – ADD COPY添加文件和目录到镜像
02-27
Dockerfile参考(2) – 格式
05-31
Linux下lua开发环境安装及安装luafilesystem
06-21
安装驱动时出现“需要HD Audio总线驱动程序,但是没有找到“错误的解决方案
05-30
T270 G5服务器liunx系统运行过程报“nautilus崩溃”错误的原因?
07-18
0.Jupyter Notebook快速入门
06-19
fileZilla远程上传文件失败原因和解决办法
06-29
B450系列机器QQ语音听不到对方声音解决方案
06-30
IdeaCentre B3系列电脑按下主机电源开关但无法开机的处理方法
07-24
LeNovo G485亮度无法调节的解决方案
06-20
LeNovo G485无线网络连接不上的解决方案
06-23
LeNovo G550在Windows XP操作系统下触控板驱动安装方法
07-17
Linux文件查看/编辑方法介绍
07-17
profilemaker下载
68.74 MB
下载NovaL CT(显示屏控制软件) v5.3.0 官方免费版
74.4M
下载Black Notepad(文字编辑器) v2.1.2.15 绿色中文版
700KB
下载LabVIEW 2018注册机下载 v1.2绿色版 附激活方法
552 KB
下载MathWorks MATLAB R2019a破解补丁 附使用方法
18.61GB
下载RedNotebook下载
17.5M
下载powerstrip 3.90中文破解版 (附使用方法)
1.28MB
下载报考照片审核处理软件 v3.0.0.373 官方版
21MB
下载剪报浏览器下载
58.3M
下载印果(自助报价下单工具) 3.9.2.0最新PC版
112.9M
下载印通印刷报价软件下载
19.2M
下载电脑报时(电脑整点报时工具) V1.1 免费版
1.97 MB
下载Norton partitionmagic 8.0下载
3.77 MB
下载fileActivityWatch v1.06 中文版
132.05K
下载fileLocator Pro中文破解版 v8.5
27.3M
下载fileMind QuickFix下载
289.1K
下载AbsolutusfileCrypter下载
75K
下载Alternate file Shredder下载
869KB
下载ESET NoD32 Antivirus下载
79.64M
下载GSfileManager下载
1.1M
下载