宝塔面板出现“open_basedir restriction in effect. ”的解决方法


Posted in PHP onMarch 14, 2021

1、只需要在相应的网站目录,勾选掉防跨站攻击(open_basedir)即可!

2、必须重启PHP;

宝塔面板出现“open_basedir restriction in effect. ”的解决方法

 

LNMP/LAMP 出现“open_basedir restriction in effect. ”的解决方法

我今天也遇到了这样的情况,我用的是LNMP一键安装包+Thinkphp,然后根目录绑定到的是public目录下,再访问首页的时候出现500错误,后来去 php.ini 把 display_errors 设置为 on 后,报的错误和文章讲的一模一样;

 

我的解决方法其实和文章也差不多,原理都是一样的:

 

我是看到LNMP官方提供的“防跨目录设置”方法,如下:

LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置。

LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。

.user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini

可以使用winscp文件管理、vim编辑器或nano编辑器进行修改。

删除的话rm -f /网站目录/.user.ini 就可以。

修改完成后再执行:chattr +i /网站目录/.user.ini

.user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。

如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!!

 

LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE “open_basedir=$document_root/:/tmp/:/proc/”; 在该行行前添加 # 或删除行,需要重启nginx。

LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。

在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。

LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要设置可以在前面加 # 进行注释,或自行修改目录的限制。

重启apache生效。

PHP 相关文章推荐
不用数据库的多用户文件自由上传投票系统(1)
Oct 09 PHP
php类
Nov 27 PHP
简单的php数据库操作类代码(增,删,改,查)
Apr 08 PHP
PHP设计模式之结构模式的深入解析
Jun 13 PHP
PHP中$this和$that指针使用实例
Jan 06 PHP
php绘图之生成饼状图的方法
Jan 24 PHP
php中mysql连接方式PDO使用详解
Feb 25 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
Aug 23 PHP
Laravel4中的Validator验证扩展用法详解
Jul 26 PHP
PHP微信PC二维码登陆的实现思路
Jul 13 PHP
PHP常见加密函数用法示例【crypt与md5】
Jan 27 PHP
PDO::inTransaction讲解
Jan 28 PHP
open_basedir restriction in effect. 原因与解决方法
Mar 14 #PHP
aec加密 php_php aes加密解密类(兼容php5、php7)
Mar 14 #PHP
PHP配置文件php.ini中打开错误报告的设置方法
Jan 09 #PHP
imagettftext() 失效,不起作用
Mar 09 #PHP
PHP高并发和大流量解决方案整理
Mar 09 #PHP
PHP获取php,mysql,apche的版本信息及更多服务器信息
Mar 09 #PHP
PHP 出现 http500 错误的解决方法
Mar 09 #PHP
You might like
php用数组返回无限分类的列表数据的代码
2010/08/08 PHP
如何使用纯PHP实现定时器任务(Timer)
2015/07/31 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
JavaScript 学习笔记(十六) js事件
2010/02/01 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
禁用页面部分JavaScript不是全部而是部分
2014/09/03 Javascript
jQuery中slideUp()方法用法分析
2014/12/24 Javascript
jQuery中add()方法用法实例
2015/01/08 Javascript
jquery实现简单的无缝滚动
2015/04/15 Javascript
jQuery+PHP+MySQL二级联动下拉菜单实例讲解
2015/10/27 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
Javascript技术栈中的四种依赖注入小结
2016/02/27 Javascript
jquery.cookie.js实现用户登录保存密码功能的方法
2016/04/15 Javascript
javascript和jquery实现用户登录验证
2016/05/04 Javascript
javascript基础知识之html5轮播图实例讲解(44)
2017/02/17 Javascript
解决Vue.js父组件$on无法监听子组件$emit触发事件的问题
2018/09/12 Javascript
mongodb初始化并使用node.js实现mongodb操作封装方法
2019/04/02 Javascript
原生javascript自定义input[type=radio]效果示例
2019/08/27 Javascript
微信小程序监听用户登录事件的实现方法
2019/11/11 Javascript
使用python装饰器验证配置文件示例
2014/02/24 Python
Python pass详细介绍及实例代码
2016/11/24 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
pycharm使用技巧之自动调整代码格式总结
2020/11/04 Python
css3进行截取替代js的substring
2013/09/02 HTML / CSS
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
canvas拼图功能实现代码示例
2018/11/21 HTML / CSS
波兰运动鞋网上商店:e-Sporting
2018/02/16 全球购物
西安众合通用.net笔试题
2013/03/18 面试题
HR喜欢的自荐信格式
2013/10/08 职场文书
实习生自我鉴定
2013/12/12 职场文书
应聘医药销售自荐书范文
2014/02/08 职场文书
出纳岗位职责
2015/01/31 职场文书
校本研修个人总结
2015/02/28 职场文书
社会心理学学习心得体会
2016/01/22 职场文书