lnmp安装包tp5绑定到public目录页面空白:
为了去掉TP5 URL地址里面的public,把网站根目录改成了/home/wwwroot/name/public ,重启Nginx(lnmp nginx restart 或者 service nginx restart)发现网站打开空白,什么都不显示。经过查找资料发现是lnmp一键环境包做了防跨站防护,导致不能访问public以外的目录。
博主服务器环境 :centos7 lnmp1.5一键环境包
按lnmp集成环境提供的方法(lnmp vhost add)添加虚拟站点,访问站点就要加个二级目录,如
http://name/public
所以为了可以让访问链接变得更加友好(即http://www.name),可以修改/usr/local/nginx/conf/vhost/www.name.conf(下称“专属配置”)
root /home/wwwroot/name/;
改为:
root /home/wwwroot/name/public;
那么问题来了,由于lnmp环境考虑到虚拟站点各自的访问目录权限问题,于是在/usr/local/nginx/conf/fastcgi.conf
里配置了
fastcgi_param PHP_ADMIN_VALUE “open_basedir=$document_root/:/tmp/:/proc/”;
那么每个站点的访问权限就限制在各自的document_root里了,
于是,我们修改的root(root /home/wwwroot/name/public;)就把权限限制在public目录之后,
软件架构根目录下的application等都无法访问了,那么此时我们要解决的问题是:
2.既要保持root /home/wwwroot/name/public;,又要让虚拟站点有/home/wwwroot/name.com目录的访问权限,
那么可以修改/usr/local/nginx/conf/fastcgi.conf配置文件:
fastcgi_param PHP_ADMIN_VALUE “open_basedir=$document_root/:/tmp/:/proc/”;
改为:
fastcgi_param PHP_ADMIN_VALUE “open_basedir=/home/wwwroot/name/:/tmp/:/proc/”;