卸载扩展后,我在opencart商店中出现此错误。整个商店不再有效。它没有我自己的模板,所有的PHP功能都不起作用。出现此错误:
Warning: fopen(/my_path/system/logs/): failed to open stream: Is a directory in /my_path/system/library/log.php on line 6
这是Log类:
class Log {
private $handle;
public function __construct($filename) {
//this is line 6
$this->handle = fopen(DIR_LOGS . $filename, 'a');
}
public function write($message) {
fwrite($this->handle, date('Y-m-d G:i:s') . ' - ' . print_r($message, true) . "\n");
}
public function __destruct() {
fclose($this->handle);
}
}
看起来$ filename var是空的。这也反映了我上面提到的不工作的php。日志目录是755,我尝试使用777。
第二个错误显示在我的商店底部:
Fatal error: Call to a member function get() on a non-object in /homepages/6/d421894284/htdocs/opencart/upload/index.php on line 104
有没有人在Opencart 2.0.1.1中遇到过这个错误?谷歌说,这一定是一个常见的错误,但我找不到解决方案。
答案很简单,改变---->
define('DIR_STORAGE','/storage/');
define('DIR_STORAGE', DIR_SYSTEM . '/storage/');
并在admin文件夹中对config.php和config.php执行此操作,更改两个文件夹
发生此问题当系统因权限问题而无法创建包含日志缓存和修改文件夹的存储文件夹时,有时会在从仪表板传输存储目录后发生问题,因此要解决问题需要执行以下操作
sudo mkdir storage
的根目录中创建一个存储文件夹sudo chmod -R 755 storage
的根目录中创建一个存储文件夹sudo mkdir logs
的根目录中创建一个存储文件夹日志文件的sudo chmod -R 755 logs
未在管理面板中设置或未传递给构造函数。入住sudo mkdir modification
并确保您在那里设置了一些东西。
如果是这样,下一步将检查主index.php并确保代码在第68行周围完好无损,应该是:
sudo chmod -R 755 modification
$ filename为空,查找文件名,因为它不存在。
$filename
检查$ filename是否为空
我们遇到了同样的问题,并且能够通过在这两个文件中放入正确的数据来解决它:
请确保您为Admin > System > Settings > Server > Error Log Filename
输入了正确的条目:
$log = new Log($config->get('config_error_filename'));
$registry->set('log', $log);
<?php
class Log {
private $handle;
public function __construct($filename) {
if (! empty( $filename )) {
$this->handle = fopen(DIR_LOGS . $filename, 'a');
}
}
public function write($message) {
fwrite($this->handle, date('Y-m-d G:i:s') . ' - ' . print_r($message, true) . "\n");
}
public function __destruct() {
fclose($this->handle);
}
}
试试这个。我已经使用命令解决了这个错误。
正在寻找存储文件夹中的文件。这一步一步做
DB_PREFIX
重新加载您的opencart网站
普雷斯托!
我遇到了同样的问题。安装后立即出现在管理员中:
define('DB_PREFIX', 'oc_');
这是解决方案:安装后日志文件夹的权限,你可以离开755!该文件位于/var/www/my_account/data/www/mysite.com/system/logs/openbay.log需要放置权限777.之后,我遗漏了所有错误。