Próbuję włączyć tryb programisty w witrynie przy użyciu Magento 1.7. Do tej pory dodałem:
SetEnv MAGE_IS_DEVELOPER_MODE "true"
do .htaccess
pliku i:
...
if (isset($_SERVER['MAGE_IS_DEVELOPER_MODE'])) {
Mage::setIsDeveloperMode(true);
}
...
do index.php
pliku, jak opisano tutaj . Usunąłem nawet If
klauzulę, pozostawiając jedynie:
...
Mage::setIsDeveloperMode(true);
...
w pliku index.php. Ale wciąż nie ma szczęścia. czego mi brakuje? Co powinienem zrobić, aby włączyć tryb programisty?
magento-1
debugging
developer-mode
fuumind
źródło
źródło
Odpowiedzi:
Spróbuj wykonać następujące czynności w swoim
index.php
pliku:Sprawdź także, czy masz:
1. Wyłącz system pamięci podręcznej > Zarządzanie pamięcią podręczną> Wybierz wszystko [pola wyboru]> Działania = Wyłącz> Prześlij
2. Ponownie zindeksuj cały system> Zarządzanie indeksem> Wybierz wszystko [pola wyboru]> Działania = Reindeks danych> Prześlij
3. Wyłącz system kompilacji > Narzędzia> Kompilacja> Wyłącz
Uwaga: Domyślnie tryb kompilacji jest wyłączony. Więc po prostu sprawdź, czy status kompilatora jest włączony, czy nie.
4. Włącz system rejestrowania > Konfiguracja> Zaawansowane> Deweloper> Ustawienia dziennika> Włączone => Tak
źródło
Trzy możliwe rzeczy do sprawdzenia
Edytujesz niewłaściwy
index.php
/.htaccess
plikW systemie masz inny niestandardowy kod, który wyłącza tryb programisty
Twoje oczekiwania co do tego, co robi programista, są niepoprawne (opisanie niedopasowania oczekiwań może pomóc w debugowaniu Twojego problemu)
źródło
Spróbuj wykonać następujące czynności w pliku index.php: Move Mage :: setIsDeveloperMode (true); z warunku If.
źródło
Może to być również spowodowane przekierowaniem serwera.
Sprawdź wyjście phpinfo i sprawdź
$_SERVER['REDIRECT_MAGE_IS_DEVELOPER_MODE']
również zmienną.Objaśnienie:
Jeśli pracujesz z modułem Apache mod_rewrite i chcesz ustawić niektóre zmienne środowiskowe, instrukcja Apache mówi, że dostęp do tych zmiennych można uzyskać za pomocą CGI
$ENV{VAR}
. W PHP możesz chcieć pisać,$_ENV['VAR']
aby uzyskać wartość VAR, ale musisz uzyskać dostęp, jeśli za pośrednictwem$_SERVER
i na kilka różnych sposobów:RewriteEngine na RewriteRule ^? Var1 = ([^;] ); var2 = ([^;] ) $ \ - [E = VAR1: 1 $, E = VAR2: 2 $]
RewriteEngine na RewriteRule ^ index.php $ - [L] RewriteRule? Var1 = ([^;] ); var2 = ([^;] ) $ \ index.php [E = VAR1: 1 $, E = VAR2: 2 $]
Uwaga: Jeśli jakakolwiek reguła RewriteRule jest zgodna, przekierowanie wewnętrzne następuje ponownie (po ostatniej zdefiniowanej regule lub bezpośrednio po dopasowanej regule mającej flagę L), sprawdzając ponownie cały zestaw reguł. W przypadku przekierowania wewnętrznego każda zdefiniowana zmienna VAR otrzymuje prefiks „REDIRECT_”, tzn. Zmienna VAR1 będzie oznaczona jako REDIRECT_VAR1, zmienna VAR2 będzie oznaczona jako REDIRECT_VAR2.
Oczywiście możesz (dodatkowo) przedefiniować oryginalną VAR:
RewriteEngine na RewriteRule ^ index.php $ \ - [E = VAR1:% {REDIRECT_VAR1}, E = VAR2:% {REDIRECT_VAR2}, L] RewriteRule? Var1 = ([^;] ); var2 = ([^;] ) $ \ index.php [E = VAR1: 1 $, E = VAR2: 2 $]
Dzięki temu będziesz mieć
$_SERVER['REDIRECT_VAR*']
i$_SERVER['VAR*']
.Podane przykłady mają jedynie charakter wyjaśniający, w każdym razie nie mają na celu dopasowania do Twoich potrzeb. „\” W przykładach .htaccess służy wyłącznie do wyświetlania, nie powinny występować w prawdziwym pliku .htaccess. Separator argumentów; w linkach może być również „&”, ale może to powodować problemy z HTML / XHTML. Więcej informacji na temat tego problemu można znaleźć na następujących stronach:
http://www.w3.org/TR/html4/appendix/notes.html#hB.2.2
http://www.w3.org/QA/2005/04/php-session
źródło