- 积分
 - 369
 
- 威望
 -  
 
- 金钱
 -  
 
- 注册时间
 - 2018-5-13
 
- 在线时间
 -  小时
 
- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
 
 
本人是菜鸟级别的, 
 
1,安装LNMP 
2,添加vhost 如: www.demo.com 
3,选型框架(THINKPHP) 
 
此时默认的防跨目录 是 /home/wwwroot/www.demo.com 
 
跨目录方案: 
1,默认不改变,改写入口文件 index.php :也就是将public里的index.php移到上一层(网站根目录),然后调整下框架引用路径. 
 
2,按照这里的设置 https://lnmp.org/faq/lnmp-vhost-add-howto.html#user.ini 
LNMP 1.4或更高版本也可以直接使用lnmp安装包 tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除,需要输入原网站目录完整路径(注意不是新的网站路径),回车即可。 
在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。 
 
3, 自定义一个文件夹,将程序主体都移动到里面 
比如新建 skdfweb 
将 (除了 index.php,uploads) 等不想直接访问到的,都移动到 skdfweb 里, 
 
方案2 和 3 是不是相同的效果(安全上考虑) 
哪种回比较好呢,  
 
 
 
 
 
 
补充内容 (2021-3-2 09:56): 
经测试 还是 方案2 安全点 |   
 
 
 
 |