ローカルホストから新しいサーバーに移動しようとしています。新規インストールは問題なく機能しました。ファイルをアップロードすると、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_');
?>
admin/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_');
?>
これに関する助けをいただければ幸いです。
私はopencartを使用していて、vqmodをインストールしました。突然、同じエラーの1つが発生しました。
これで私の問題は解決しました:system/library/session.phpで、startsessionを次のように置き換えます。
session_save_path(realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../tmp'));
このエラーは、キャッシュフォルダに設定されている権限が原因です。それを755に設定し、ファイルを555に設定すると、家に帰って乾かします。
受け取ったエラーから、$config
変数が設定されていないようです。 $config
変数は、system/library/config.php
にあるConfig
クラスを使用して35行目に設定されています。
クラスがインスタンス化されない理由を理解すれば、問題を修正できると思います。これはいくつかの可能性があります:
system/library/config.php
ファイルが新しいサーバーにアップロードされていない可能性がありますsystem/library/config.php
の権限を確認し、正しいユーザーが所有権を持っていることを確認してください。サーバーにファイルをアップロードします(ディレクトリ:vqmod/.... php)。
Vqmodファイルのパーミッションを変更するだけです。私は777を設定し、それで解決しました。
このエラーに遭遇して解決されたすべてのアクセス許可を設定したことをクロスチェックしてください。これはファイルのアクセス許可の問題が原因でした。
サイトを新しいVPS環境に移行した後、同じ問題に苦しんでいました。私はそれが変更されたドキュメントルートパスまたは私のショップの許可と関係があると考え、問題の核心に到達しようとして多くの髪を引っ張った。
PHP session-data store!私の場合、/ var/lib/php/session /のフォルダーは(当然のことながら)Apacheが所有していたのですが、 Apacheを別のユーザーとして実行するように変更したため、セッションストアに書き込めなくなりました。
この場合のエラーメッセージは(控えめに言っても)不可解であり、問題が書き込み権限の欠如である可能性があるという手がかりを与えませんでした!
まあ、UNIXの問題の90%がパーマにかかっていることを今では知っているはずです!
最も可能性の高い問題は、1つ以上のライブラリファイルがアップロードによって破損していることです。ローカルフォルダからsystem/library/
フォルダを再アップロードします。設定ファイルは問題ないようで、エラーは設定の問題を参照していません。 index.php
ファイルの103行目は何ですか?