安装完毕,后台点击就开始报这个错误.是我环境问题,还是 yii 的问题.

技术问题 · isbase · 于 5年前 发布 · 1592 次阅读

我找到所对应代码那里.

		# 配置config文件
		$config_file_dir = $this->_currentDir . '/etc/config.php';
		if(file_exists($config_file_dir)){
			$params_data = (require($config_file_dir));	
		}

我感觉这里的 File(/etc/config.php) 应该是 /www/wwwroot/fecshop/vendor/fancyecommerce/fec_admin/etc/config.php 才对.

而且 这个目录下,也没有/etc/config.php 这个目录以及文件.

下面是所有的报错信息.

<pre>PHP Warning &#039;yii\base\ErrorException&#039; with message &#039;file_exists(): open_basedir restriction in effect. File(/etc/config.php) is not within the allowed path(s): (/www/wwwroot/fecshop/:/tmp/:/proc/)&#039; 

in /www/wwwroot/fecshop/vendor/fancyecommerce/fec/AdminModule.php:38

Stack trace:
#0 [internal function]: yii\base\ErrorHandler-&gt;handleError(2, &#039;file_exists(): ...&#039;, &#039;/www/wwwroot/fe...&#039;, 38, Array)
#1 /www/wwwroot/fecshop/vendor/fancyecommerce/fec/AdminModule.php(38): file_exists(&#039;/etc/config.php&#039;)
#2 /www/wwwroot/fecshop/vendor/fancyecommerce/fec/AdminModule.php(26): fec\AdminModule-&gt;configModuleParams()
#3 /www/wwwroot/fecshop/vendor/fancyecommerce/fecshop/app/appadmin/modules/Catalog/Module.php(33): fec\AdminModule-&gt;init()
#4 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/BaseObject.php(109): fecshop\app\appadmin\modules\Catalog\Module-&gt;init()
#5 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/Module.php(158): yii\base\BaseObject-&gt;__construct(Array)
#6 [internal function]: yii\base\Module-&gt;__construct(&#039;catalog&#039;, Object(yii\web\Application), Array)
#7 /www/wwwroot/fecshop/vendor/yiisoft/yii2/di/Container.php(376): ReflectionClass-&gt;newInstanceArgs(Array)
#8 /www/wwwroot/fecshop/vendor/yiisoft/yii2/di/Container.php(156): yii\di\Container-&gt;build(&#039;\\fecshop\\app\\ap...&#039;, Array, Array)
#9 /www/wwwroot/fecshop/vendor/yiisoft/yii2/BaseYii.php(349): yii\di\Container-&gt;get(&#039;\\fecshop\\app\\ap...&#039;, Array, Array)
#10 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/Module.php(427): yii\BaseYii::createObject(Array, Array)
#11 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/Module.php(586): yii\base\Module-&gt;getModule(&#039;catalog&#039;)
#12 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/Module.php(522): yii\base\Module-&gt;createController(&#039;productinfo/ind...&#039;)
#13 /www/wwwroot/fecshop/vendor/yiisoft/yii2/web/Application.php(103): yii\base\Module-&gt;runAction(&#039;catalog/product...&#039;, Array)
#14 /www/wwwroot/fecshop/vendor/yiisoft/yii2/base/Application.php(386): yii\web\Application-&gt;handleRequest(Object(yii\web\Request))
#15 /www/wwwroot/fecshop/appadmin/web/index.php(77): yii\base\Application-&gt;run()
#16 {main}</pre>
共收到 2 条回复
Fecmall#15年前 0 个赞

如果是docker安装的,那么路径是php docker容器里面的目录

配置文件路径是 $config_file_dir = $this->_currentDir . '/etc/config.php'; 前面有一个 $this->_currentDir

isbase#25年前 0 个赞

@Fecshop #1楼 感谢大哥回复, 我自己配置的环境,Docker 感觉配置有点跟不上,只能用 composer 方式安装的 这里目录应该是在 fancyecommerce/fec_admin/下面,我看这个项目下面也没有这个配置,最后给 file_exists 检测给注释掉了,目前不知道会不会带来别的问题.

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics