一、环境
LNMP+lavarel
>lnmp vhost add
添加了名为“测试域名”的vhost,自动生成了vhost下的"测试域名.conf"配置文件和wwwroot下的"测试域名"目录
在命令提示选项中指定该vhost的主目录为“/home/wwwroot/测试域名/public”
删除测试目录
>composer create-project laravel/laravel 测试目录
建立laravel项目,并重新生成目录
二、错误现象
访问网址"测试域名",显示500错误
三、分析
/home/wwwroot/测试目录/public/index.php文件中有一行“require __DIR__. 'vendor/'autoload.php”;
该句解析的过程中引用到了"/home/wwwroot/测试目录/",该目录引用被默认禁止跨目录,导致解析失败
四、解决办法
将 php.ini 中的
display_errors
值设为"on"500错误提示变为具体提示,指出是fastcgi.conf中的"openbase_dir"防跨目录设置导致
编辑/usr/local/nginx/conf/fastcgi.conf文件
把“/home/wwwroot/测试目录/”添加到“openbase_dir”值中
重启nginx和php-fpm,网站显示正常