2012-10-05 36 views
10

試圖從本地主機移動到新的服務器。新鮮安裝工作正常,沒有問題。當我上傳我的文件時,mydomain.com/admin出現白屏並且mydomain.com產生此錯誤:Opencart致命錯誤:調用一個非對象的成員函數get()

致命錯誤:調用成員函數get()在/ home4/pawpostc /上線103

的public_html/index.php的所以我看了一下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

檢查文件系統/庫/ config.php的權限(所有者:groop) – zubovd

回答

0

最可能的問題是您的一個或多個庫文件上傳時已損壞。重新從您的本地文件夾上傳您的system/library/文件夾。你的配置文件看起來很好,錯誤不會引用配置問題。 index.php文件中的第103行是什麼?

+0

帖子中的第一個代碼框是第103行。我會給庫上傳一個鏡頭。 – Travis

+0

如果可以,請檢查pawpost.com.au/index1.php。我上傳了系統/庫文件夾,沒有改變。我會瀏覽每個文件。 – Travis

+0

檢查'/ system/library/config.php'和'index.php'文件本身以確保它們完全匹配。你的錯誤意味着'$ config'不是它意味着的對象(一個'Config'類),這通常是由於庫文件被破壞造成的 –

0

請交叉檢查您已設置我遇到這個錯誤已經來到所有權限 和解決了, 這是由於文件權限問題

3

我用Opencart的並安裝vqmod。 突然之間,我有一個相同的錯誤。

這解決了我的問題:

session_save_path(realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../tmp')); 
+0

該解決方案解決了我的問題。非常感謝! –

+0

這是一個很好的解決方案。謝謝,你救了我的一天! – jiraya85

-3

我有這個問題,當我遷移我的服務器從2G到4GH在Godaddy的: 系統/庫/ session.php文件 代之以啓動會話。 來到這個論壇,發現問題是與session.php 然後,我猜'tmp'文件夾丟失。所以,我在HTML文件夾上創建了一個步驟。並給它一個777訪問權限。問題解決了,之後我的網站看起來很棒。

+0

777不安全! – m1crdy

0

將我的網站遷移到新的VPS環境後,我一直在努力解決同樣的問題。我認爲這與我改變的文檔根路徑或我的商店的許可有關,並且竭力想要解決問題的核心問題。

我終於意識到我在我的PHP會話數據存儲上有不正確的權限!在我的情況下,/ var/lib/php/session /中的文件夾屬於apache(自然),但我已將apache更改爲另一用戶,因此無法再寫入會話存儲。

在這種情況下的錯誤信息是神祕的(至少可以說!),並沒有給出線索,說明問題可能只是沒有寫權限!

噢,我們現在應該知道,unix問題的90%已經降至燙髮水平!

0

我上傳一個文件在我的服務器(目錄:vqmod/.... php)。

只需更改vqmod文件權限即可。我設置了777,並解決了它。

-1

我有同樣的問題。我將vqmod權限更改爲777.我不確定這是否解決了問題,但是我沒有添加www就檢查了我的網站。在域和它的工作之前。如果我檢查http://daytodaystore.com,警告將被刪除。如果我檢查http://www.daytodaystore.com,警告就在那裏。

0

從您收到的錯誤,它看起來像$config變量沒有被設置。 的$config變量使用Config類位於system/library/config.php

我認爲,如果你弄清楚爲什麼這個類是沒有得到實例化線35設置,您就可以解決這個問題。 這可能是兩件事情:

  • system/library/config.php文件可能沒有被上傳到新的服務器
  • 如前面提到的答案,有可能是一個權限問題。檢查system/library/config.php的權限並確保正確的用戶擁有所有權。
  • 或者它可能是一個完全無關的問題。
0

錯誤是由於在緩存文件夾上設置了權限。將它設置爲755並將文件設置爲555並將其設置爲回家並乾燥。

相關問題