有同学咨询,在宝塔面板部署的网站,打开后报错,提示Warning:is_dir():open_basedir restriction in effect. File is not within the allowed path,这是怎么回事,如何修复解决呢?今天丁老师教给大家。
故障分析
其实不管是在宝塔面板部署网站也好,在其他Linux服务器部署系统也好,可能都会遇到这种问题。这个故障代码的字面意思是“警告:存在文件限制,文件不在允许的路径内”,翻译成普通话来说,就是当前调用的文件,该文件的所属路径不在允许的路径内,所以无法调用。
引起该故障的原因是.user.ini文件,这个文件是PHP的目录级配置文件,一般在Nginx环境下比较常见,在宝塔面板中新建网站时,会自动添加这个文件。这个文件包含了程序可执行的目录限制,在程序执行时,如果需要调用没在这个文件中定义的路径,则会报错提示上述错误代码。
解决方法
要解决这个报错提示,有两种方法。
方法一:修改.user.ini文件
将涉及程序调用和执行的目录添加到.user.ini中,如网站的路径为:/www/wwwroot/website1,则设置.user.ini代码如下:
open_basedir=/www/wwwroot/website1/:/tmp如果要添加多个路径,可以设置为:
open_basedir=/www/wwwroot/website1/:/tmp:/www/wwwroot/website2/:/www/wwwroot/website3/
格式为:
open_basedir=网站主路径:/tmp:第2个主路径:第3个主路径:第4个主路径...注意,修改.user.ini并保存后,通常网站不会立即生效,可以尝试重启PHP服务以确保修改生效。
方法二:删除.user.ini文件
就是直接删除.user.ini文件,不需要修改任何代码,这是最简单的方法。修改后PHP即默认不再对程序调用路径进行限制,程序可以调用任意目录的文件和代码。
注意,此方法虽然操作简单,但是有一定的安全风险,如果网站或程序被黑客攻击或病毒入侵,则入侵者可以通过程序调用任意目录的文件,具有极高的安全隐患。
丁老师建议,为了安全起见,这个文件最好不要删除,如果系统涉及调用其他目录了,在.user.ini文件中添加一下对应路径即可。
经常使用Phpmailer来发信,作为事件的通知渠道,遇到过各种情况的问题,总结了一些经验和注意事项分享给大家:1.phpmailer使用ssl发信,无需在服务器中开启任何端口,无需在防火墙中开启端口;2.出现SMTP Error: C...
一、wordpress安装系统配置要求1.PHP 7.4以上版本。2.Mysql5.7或MariaDB 10.3以上版本。3.Nginx或开启mod_rewrite模块的Apache底座。4.需要支持HTTPS的SSL证书。二、创建数据...
今天有一个老客户咨询丁老师,他们公司目前的业务主要是用微信小程序,目前公司业务在往抖音平台上转移,想问下微信小程序可以转为抖音小程序吗?要如何实现呢?今天丁老师就这个问题简单介绍一下。首先,微信小程序是可以转为抖音小程序的。因为不管是微...
K8s,就是Kubernetes(库博内茨),是由Google发明创建的用于自动化部署、扩展和管理容器化的应用程序。很多人一直不太理解k8s到底是做什么的,以及在实际项目运行中的意义和作用到底有多大,今天丁老师就来介绍一下。K8s是做什...
普通账号个人认证号企业认证号蓝色认证标识薯条推广聚光平台效果广告普通应商业合作以KOL/KOC身份和品牌合作以品牌方身份发起起合作开设店铺个人店铺或个体户(不支持港澳台公司申请)旗舰店店或专卖店(支持港澳台公司申请)主动私信每天10位陌生用...
二维码码有三个参数: 数据类型、大小(“像素 ”数)和纠错级别。能存储多少信息也取决于这些参数。例如,纠错级别越低,可存储的信息越多,但代码越难被读者识别。最大尺寸和最小纠错值如下:最大字符数 7089个字符(纯数字)字母数字 4296个字...
软件介绍Basgito是基于Laravel框架的免费电子商务平台,可以快速搭建自己企业专属的电子商务交易平台,适用于中小型外贸企业。该电商平台拥有无头laravel商务(headless laravel commerce)的强大功能,可以快...
今天有同学在群里提问,在使用photoshop编辑文字时,经常会弹出一个文字选择的面板如图:这时文字也无法输入,也无法取消和关闭,很是烦人,怎么取消这个功能呢?经过丁老师研究,方法很简单:1.打开photoshop菜单-编辑2.选择首选项-...