本文最后更新于 239 天前,其中的信息可能已经有所发展或是发生改变。
突然想改改我主页上某个跳转用的文件,却发现这个页面打不开了。。。

提示 No input file specified()
但是在同一个服务器不同的网站的却没有报这个问题,试着又新建了个 phpinfo.php ,结果依旧不行,一样的报错。。。
那就检查日志吧
2020/03/21 12:30:49 [error] 20151#20151: *104 FastCGI sent in stderr: "PHP message: PHP Warning: Unknown: open_basedir restriction in effect. File(/var/www/home/conn.php) is not within the allowed path(s): (/home/wwwroot/home:/tmp/:/proc/) in Unknown on line 0
PHP message: PHP Warning: Unknown: failed to open stream: Operation not permitted in Unknown on line 0
Unable to open primary script: /var/www/home/conn.php (Operation not permitted)" while reading response header from upstream, client: 172.69.34.190, server: home.asec01.net, request: "GET /conn.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.2-fpm.sock:", host: "home.asec01.net"
得知是 open_basedir 在作怪,检查 /etc/php/x.x/fpm/php.ini,这个功能并没有被配置,很奇怪
查了查资料,发现 网站目录/.user.ini 也可以配置这个功能

果然如此,那就干掉它,重启nginx,一切正常。
解释下为啥会出这个问题哈:
前一阵子重装服务器系统,网站目录直接被我 tar czvf 的打包了,原来的web环境是用lnmp一键安装包装的,这个东西新建网站会自动创建 .user.ini 保证安全,但我重装系统直接 apt install 了所有需要的东西,web目录也都变了。。所以emmmm
