宝塔面板出现“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 相关文章推荐
php 购物车的例子
May 04 PHP
php 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
Oct 22 PHP
10条PHP高级技巧[修正版]
Aug 02 PHP
利用php绘制饼状图的实现代码
Jun 07 PHP
php读取二进制流(C语言结构体struct数据文件)的深入解析
Jun 13 PHP
执行、获取远程代码返回:file_get_contents 超时处理的问题详解
Jun 25 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
深入理解PHP中的count函数
May 31 PHP
Laravel4中的Validator验证扩展用法详解
Jul 26 PHP
thinkPHP中钩子的两种配置调用方法详解
Nov 11 PHP
详解PHP函数 strip_tags 处理字符串缺陷bug
Jun 11 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
Nov 23 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调用数据库的存贮过程
2006/10/09 PHP
php长字符串定义方法
2012/07/12 PHP
PHP 获取远程文件大小的3种解决方法
2013/07/11 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
PHP laravel中的多对多关系实例详解
2017/06/07 PHP
JavaScript 自动分号插入(JavaScript synat:auto semicolon insertion)
2009/11/04 Javascript
jQuery 学习6 操纵元素显示效果的函数
2010/02/07 Javascript
javascript,jquery闭包概念分析
2010/06/19 Javascript
再谈javascript图片预加载技术(详细演示)
2011/03/12 Javascript
iphone safari不支持position fixed的解决方法
2012/05/04 Javascript
JS中的log对象获取以及debug的写法介绍
2014/03/03 Javascript
window resize和scroll事件的基本优化思路
2014/04/29 Javascript
javascript获取四位数字或者字母的随机数
2015/01/09 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
Angular使用操作事件指令ng-click传多个参数示例
2018/03/27 Javascript
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
JS实现求5的阶乘示例
2019/01/21 Javascript
layui实现数据表格自定义数据项
2019/10/26 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
python生成excel的实例代码
2017/11/08 Python
Django中使用Celery的方法示例
2018/11/29 Python
Python实现Event回调机制的方法
2019/02/13 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
Python读取表格类型文件代码实例
2020/02/17 Python
python 数据类型强制转换的总结
2021/01/25 Python
HTML5 声明兼容IE的写法
2011/05/16 HTML / CSS
HTML5 textarea高度自适应的两种方案
2020/04/08 HTML / CSS
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
细节决定成败演讲稿
2014/05/12 职场文书
2014高考励志标语
2014/06/05 职场文书
我们的节日中秋活动方案
2014/08/19 职场文书
2014学习优秀共产党员先进事迹思想汇报
2014/09/14 职场文书
爱心募捐通知范文
2015/04/27 职场文书
学生检讨书怎么写
2015/05/07 职场文书
教师继续教育反思周记
2015/06/25 职场文书
2016年三严三实党课学习心得体会
2016/01/06 职场文书