Magento 1.7で開発者モードを有効にする方法


20

Magento 1.7を使用して、サイトで開発者モードを有効にしようとしています。これまでに追加しました:

SetEnv MAGE_IS_DEVELOPER_MODE "true"

.htaccessファイルと:

...
if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) {
    Mage::setIsDeveloperMode(true);
}
...

index.php説明するようにファイルをここに。私はIf句だけを削除して、以下だけを残しました:

...
    Mage::setIsDeveloperMode(true);
...

index.phpファイル内。しかし、まだ運はありません。私は何が欠けていますか?開発者モードを有効にするにはどうすればよいですか?


1
両方のメソッドが機能するはずです。「まだ運がない」とはどういう意味ですか?それがうまくいかないと言うことはどうなりますか?
マリウス

回答:


26

index.phpファイルで次のことを試してください。

if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) {
    Mage::setIsDeveloperMode(true);
    ini_set(’display_errors’, 1);
}

また、次のことを確認してください。

1.キャッシュ システムの無効化 >キャッシュ管理>すべて選択[チェックボックス]>アクション=無効化>送信

2.すべての システムのインデックスを再作成 >インデックス管理>すべてを選択[チェックボックス]>アクション=データのインデックスを再作成>送信

3.コンパイル システムの無効化 >ツール>コンパイル>無効化

注:デフォルトでは、コンパイルモードは無効になっています。そのため、コンパイラステータスが有効かどうかを確認してください。

4. [ロギング システム]> [構成]> [詳細]> [開発者]> [ログ設定]> [有効] => [はい]をオンにします。


Mage :: setIsDeveloperMode(true); チケットだった。乾杯。
ダースエグレジャス14年

ini_set( 'display_errors'、1);を有効にすると何でもできます。その仕事
サイードダービッシュ

9

確認できる3つのこと

  1. 間違ったindex.php/ .htaccessファイルを編集しています

  2. 開発者モードをオフにするシステムに他のカスタムコードがあります

  3. 開発者が行うことに対する期待は正しくありません(期待の不一致を説明することは、人々が問題をデバッグするのに役立つ場合があります)


ありがとうアラン!1. Im編集ファイルは、ドキュメントルートにあります。2.システムはMagentoの新規インストールなので、問題になりません。3. atmを取得している白い空のページの代わりに、ブラウザウィンドウにエラーがポップアップすることを期待しています。私の期待は少しずれていますか?
fuumind

display_errors php ini値とは何ですか?Webサーバーのエラーログには何が含まれていますか?
アランストーム14

Webサーバーのエラーログは(もちろん)見るべき場所です!それを指摘してくれてありがとう!:)レンダリングに失敗したWebページにエラーが表示されたり、意図的にMagentoがサイレントに失敗したりすることはありますか?
fuumind

1

index.phpファイルで次のことを試してください。Move Mage :: setIsDeveloperMode(true); If条件から。


if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) {
    Mage::setIsDeveloperMode(true);
    ini_set(’display_errors’, 1);
}

TO

Mage::setIsDeveloperMode(true); if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) { ini_set(’display_errors’, 1); }


0

サーバーのリダイレクトも原因である可能性があります。

phpinfoの出力を確認して確認してください $_SERVER['REDIRECT_MAGE_IS_DEVELOPER_MODE']変数も。

説明 :

Apacheモジュールmod_rewriteを使用していて、いくつかの環境変数を設定したい場合、Apacheのマニュアルでは、これらの変数はCGIでを使用してアクセスできます$ENV{VAR}。PHPでは$_ENV['VAR']、VARの値を取得するために記述したい場合がありますが、を介して$_SERVER、いくつかの異なる方法でアクセスする必要があります。

  1. 例:.htaccessおよびexample.php

RewriteRuleのRewriteEngine ^?var1 =([^;] ); var2 =([^;])$ \-[E = VAR1:$ 1、E = VAR2:$ 2]

  1. 例:.htaccessおよびindex.php

RewriteRuleのRewriteEngine ^ index.php $-[L] RewriteRule?var1 =([^;] ); var2 =([^;])$ \ index.php [E = VAR1:$ 1、E = VAR2:$ 2]

注:RewriteRuleが一致した場合、内部リダイレクトが再起動し(最後に定義されたルールの後、または一致したルールにLフラグが設定された直後)、ルールセット全体を再度チェックします。内部リダイレクトの場合、定義されたすべてのVARは「REDIRECT_」プレフィックスを取得します。つまり、VAR1はREDIRECT_VAR1になり、VAR2はREDIRECT_VAR2になります。

もちろん、元のVARを(さらに)再定義できます:

RewriteRuleのRewriteEngine ^ index.php $ \-[E = VAR1:%{REDIRECT_VAR1}、E = VAR2:%{REDIRECT_VAR2}、L] RewriteRule?var1 =([^;] ); var2 =([^;]) $ \ index.php [E = VAR1:$ 1、E = VAR2:$ 2]

これで、あなたはとを持つことに$_SERVER['REDIRECT_VAR*']なり$_SERVER['VAR*']ます。


与えられた例は説明のためだけのものであり、いずれの場合も、あなたのニーズに合うことを意図していません。.htaccessの例の「\」は表示のみを目的としており、実際の.htaccessファイルでは使用しないでください。引数セパレーター ';' リンク内の「&」も使用できますが、これによりHTML / XHTMLで問題が発生する可能性があります。この問題の詳細については、次のページを参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.