evilk 发表于 2017-8-7 14:06:03

lnmp open_basedir 问题

nginx 配置文件:
root /home/wwwroot/local.laravel.com/public;

/usr/local/nginx/conf/fastcgi.conf,最后一行 fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"   已注释掉

在 /home/wwwroot/local.laravel.com/public 下,新建 .user.ini内容:open_basedir=/home/wwwroot/local.laravel.com/public:/tmp/:/proc/
这种情况下,访问local.laravel.com还是报错500,还是因为 open_basedir 问题,但按照这种配置(按照官网关于 open_basedir 的设置),应该是没问题的
如果把 .user.ini 删除掉,一切正常(没有用 lnmp vhost add 添加站点,是复制的default,conf 然后自行修改的)

请问下,军哥,这是什么原因,我觉得 好像 fastcgi.conf 中 $document_root 这个变量并没有解析到/home/wwwroot/local.laravel.com/public这个目录,而是解析到了/home/wwwroot/local.laravel.com,但明明nginx配置文件中
已经root /home/wwwroot/local.laravel.com/public;

licess 发表于 2017-8-8 09:37:41

如果是lnmp模式下 lnmp vhost add 添加的网站 .user.ini 是默认就会有的,你 .user.ini 要设设置为 open_basedir=/home/wwwroot/local.laravel.com:/tmp/:/proc/ 要不然肯定是没法跨目录访问laravel 其他需要跨目录调用的文件
页: [1]
查看完整版本: lnmp open_basedir 问题