nginx报错no input file specified.

如果你已检查完所有的nginx常用配置,还是报这个错,那可能有一个不太常用的配置容易被忽略,那就是open_basedir
如果你的nginx未配置open_basedir或者php.ini中未启用open_basedir,请检查项目根目录是否有一个名为.user.ini的隐藏文件
open_basedir相关
open_basedir限制php进程不能读取open_basedir设置的目录之外的文件
open_basedir在php.ini和nginx中都可以配置

在nginx中的配置格式
fastcgi_param PHP_ADMIN_VALUE "open_basedir=/opt/webroot:/tmp/:/proc/";
多个目录使用:隔开,路径后有斜杠/proc/表示只能访问`/proc`目录,不能访问子目录
还有一种配置方式是在项目根目录(document_root)下新建文件.user.ini,文件内容为`open_basedir=/opt/webroot:/tmp/:/proc/`

在php.ini中配置
找到;open_basedir = ,去掉最前面的;,=后面插入open_basedir=/opt/webroot:/tmp/:/proc/

评论

评论正在提交中...请稍后
评论提交成功...