尝试从本地主机迁移到新服务器。全新安装工作正常,没有问题。当我上传我的文件时,mydomain.com/admin会出现白屏并且mydomain.com会产生此错误:
致命错误:在第103行的/home4/pawpostc/public_html/index.php中调用非对象的成员函数get()。
所以我看了一下index.php第103行:
if ($config->get('config_error_display')) {
echo '<b>' . $error . '</b>: ' . $errstr . ' in <b>' . $errfile . '</b> on line <b>' . $errline . '</b>';
}
好像我的配置文件有问题。所以我去看了看他们。我已经过了几次但是找不到错误,可能遗漏了一些东西,所以这里是配置文件。
config.php(在我的根www。文件夹中):
<?php
// HTTP
define('HTTP_SERVER', 'http://www.pawpost.com.au/');
define('HTTP_IMAGE', 'http://www.pawpost.com.au/image/');
define('HTTP_ADMIN', 'http://www.pawpost.com.au/admin/');
// HTTPS
define('HTTPS_SERVER', 'http://www.pawpost.com.au/');
define('HTTPS_IMAGE', 'http://www.pawpost.com.au/image/');
// DIR
define('DIR_APPLICATION', '/home4/pawpostc/public_html/catalog/');
define('DIR_SYSTEM', '/home4/pawpostc/public_html/system/');
define('DIR_DATABASE', '/home4/pawpostc/public_html/system/database/');
define('DIR_LANGUAGE', '/home4/pawpostc/public_html/catalog/language/');
define('DIR_TEMPLATE', '/home4/pawpostc/public_html/catalog/view/theme/');
define('DIR_CONFIG', '/home4/pawpostc/public_html/system/config/');
define('DIR_IMAGE', '/home4/pawpostc/public_html/image/');
define('DIR_CACHE', '/home4/pawpostc/public_html/system/cache/');
define('DIR_DOWNLOAD', '/home4/pawpostc/public_html/download/');
define('DIR_LOGS', '/home4/pawpostc/public_html/system/logs/');
// DB
define('DB_DRIVER', 'mysql');
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'my user name');
define('DB_PASSWORD', 'my password');
define('DB_DATABASE', 'my database');
define('DB_PREFIX', 'oc_');
?>
管理员/ config.php中:
<?php
// HTTP
define('HTTP_SERVER', 'http://www.pawpost.com.au/admin/');
define('HTTP_CATALOG', 'http://www.pawpost.com.au/');
define('HTTP_IMAGE', 'http://www.pawpost.com.au/image/');
// HTTPS
define('HTTPS_SERVER', 'http://www.pawpost.com.au/admin/');
define('HTTPS_CATALOG', 'http://www.pawpost.com.au/');
define('HTTPS_IMAGE', 'http://www.pawpost.com.au/image/');
// DIR
define('DIR_APPLICATION', '/home4/pawpostc/public_html/admin/');
define('DIR_SYSTEM', '/home4/pawpostc/public_html/system/');
define('DIR_DATABASE', '/home4/pawpostc/public_html/system/database/');
define('DIR_LANGUAGE', '/home4/pawpostc/public_html/admin/language/');
define('DIR_TEMPLATE', '/home4/pawpostc/public_html/admin/view/template/');
define('DIR_CONFIG', '/home4/pawpostc/public_html/system/config/');
define('DIR_IMAGE', '/home4/pawpostc/public_html/image/');
define('DIR_CACHE', '/home4/pawpostc/public_html/system/cache/');
define('DIR_DOWNLOAD', '/home4/pawpostc/public_html/download/');
define('DIR_LOGS', '/home4/pawpostc/public_html/system/logs/');
define('DIR_CATALOG', '/home4/pawpostc/public_html/catalog/');
// DB
define('DB_DRIVER', 'mysql');
define('DB_HOSTNAME', 'localhost');
define('DB_USERNAME', 'my user name');
define('DB_PASSWORD', 'my password');
define('DB_DATABASE', 'my database');
define('DB_PREFIX', 'oc_');
?>
对此有任何帮助将不胜感激。
答案 0 :(得分:3)
我正在使用opencart并安装了vqmod。 突然间,我有一个相同的错误。
这解决了我的问题: 在system / library / session.php中 将开始会话替换为:
session_save_path(realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../tmp'));
答案 1 :(得分:0)
最可能的问题是您的一个或多个库文件在上传时已损坏。重新上传您当地的system/library/
文件夹。您的配置文件看起来很好,错误不会引用配置问题。您的index.php
文件中的第103行是什么内容?
答案 2 :(得分:0)
请交叉检查您是否已设置所有权限 我遇到了这个错误并得到了解决, 这是由于文件权限问题
答案 3 :(得分:0)
将网站迁移到新的VPS环境后,我遇到了同样的问题。我认为它与改变的文档根路径或我店铺的权限有关,并且已经掏出了很多头发试图解决问题的核心。
我终于意识到我对PHP会话数据存储的权限不正确!在我的例子中,/ var / lib / php / session /的文件夹由apache拥有(当然),但是我已经将apache更改为以不同的用户身份运行,因此它无法再写入会话存储。
在这种情况下的错误消息是神秘的(至少可以说!)并没有提供问题可能只是缺少写入权限的线索!
哦,我们现在应该知道,90%的unix问题都归结为烫发!
答案 4 :(得分:0)
我在我的服务器上上传文件(目录:vqmod / .... php)。
只需更改vqmod文件权限即可。我设置了777,解决了它。
答案 5 :(得分:0)
从您收到的错误中,看起来$config
变量未设置。
使用$config
Config
类在第35行设置system/library/config.php
变量
我认为如果你弄清楚为什么没有实例化这个类,你就能解决这个问题。 这可能是几件事:
system/library/config.php
文件可能尚未上传到新服务器system/library/config.php
的权限,并确保正确的用户拥有所有权。答案 6 :(得分:0)
错误是由缓存文件夹上设置的权限引起的。将其设置为755,将文件设置为555并将其设置为原位并干燥。
答案 7 :(得分:-1)
我有同样的问题。我将vqmod权限更改为777.我不确定这是否解决了问题,但我检查了我的网站而没有添加www。在域之前它工作。如果我检查http://daytodaystore.com,则会删除警告。如果我检查http://www.daytodaystore.com,则会出现警告。
答案 8 :(得分:-3)
当我在Godaddy上将服务器从2G迁移到4GH时,我遇到了这个问题。 来到这个论坛,发现问题在于session.php 然后,我猜测'tmp'文件夹丢失了。所以,我在html文件夹上创建了一个步骤。并给了它777访问权限。问题得到解决,之后我的网站看起来很棒。