Cómo habilitar el modo de desarrollador en Magento 1.7


20

Estoy tratando de habilitar el modo de desarrollador en un sitio usando Magento 1.7. Hasta ahora he agregado:

SetEnv MAGE_IS_DEVELOPER_MODE "true"

al .htaccessarchivo y:

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

al index.phparchivo como se describe aquí . Incluso he eliminado la Ifcláusula, dejando solo:

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

en el archivo index.php. Pero aún no hay suerte. ¿Qué me estoy perdiendo? ¿Qué debo hacer para habilitar el modo de desarrollador?


1
Ambos métodos deberían funcionar. ¿Qué quieres decir con "todavía sin suerte"? ¿Qué sucede que te hace decir que no funciona?
Marius

Respuestas:


26

Pruebe lo siguiente en su index.phparchivo:

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

También asegúrese de verificar que tenga:

1. Desactivar el sistema de caché > Gestión de caché> Seleccionar todo [casillas de verificación]> Acciones = Desactivar> Enviar

2. Vuelva a indexar todo el sistema> Gestión de índice> Seleccionar todo [casillas de verificación]> Acciones = Reindexar datos> Enviar

3. Desactive el Sistema de compilación > Herramientas> Compilación> Desactivar

Nota: Por defecto, el modo de compilación está deshabilitado. Así que solo verifique si el estado del compilador está habilitado o no.

4. Active el Sistema de registro > Configuración> Avanzado> Desarrollador> Configuración de registro> Activado => Sí


Mage :: setIsDeveloperMode (verdadero); fue el boleto. Aclamaciones.
Darth Egregious

hago cualquier cosa cuando habilito ini_set ('display_errors', 1); su trabajo
Saeed Darvish

9

Tres cosas posibles para verificar

  1. Estás editando el archivo index.php/ incorrecto.htaccess

  2. Tiene otro código personalizado en el sistema que desactiva el modo desarrollador

  3. Sus expectativas de lo que hace el desarrollador son incorrectas (describir su falta de coincidencia de expectativas puede ayudar a las personas a depurar su problema)


Gracias alan! 1. Los archivos que estoy editando se encuentran en la Raíz del documento. 2. El sistema es una nueva instalación de Magento, por lo que no debería ser un problema. 3. Espero que aparezcan errores en la ventana del navegador en lugar de una página vacía en blanco, que estoy recibiendo en el cajero automático. ¿Mis expectativas están un poco apagadas?
fuumind

¿Cuál es el valor de display_errors php ini? ¿Qué hay en los registros de errores del servidor web?
Alan Storm

¡Los registros de errores de los servidores web son (por supuesto) el lugar para buscar! ¡Gracias por señalar eso! :) ¿Alguna vez se presentan errores en una página web que no se pudo procesar o Magento falla silenciosamente por diseño?
fuumind

1

Pruebe lo siguiente en su archivo index.php: Move Mage :: setIsDeveloperMode (true); de si condición.


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

También puede deberse a la redirección del servidor.

Verifique la salida de phpinfo y la $_SERVER['REDIRECT_MAGE_IS_DEVELOPER_MODE']variable de verificación también.

Explicacion:

Si está trabajando con el módulo de Apache mod_rewrite y desea configurar algunos vars de entorno, el manual de Apache dice que se puede acceder a estos vars en CGI usando $ENV{VAR}. En PHP, es posible que desee escribir $_ENV['VAR']para obtener el valor de VAR, pero debe acceder si es a través de $_SERVER, y de diferentes maneras:

  1. Ejemplo: .htaccess y example.php

RewriteEngine en RewriteRule ^? Var1 = ([^;] ); var2 = ([^;] ) $ \ - [E = VAR1: $ 1, E = VAR2: $ 2]

  1. Ejemplo: .htaccess e index.php

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

Nota: Si cualquier RewriteRule coincide, una redirección interna que se reinicia (después de la última regla definida, o inmediatamente después de que la regla coincidente tenga un L-flag) verificando todo el conjunto de reglas nuevamente. Para una redirección interna, cada VAR definido obtiene un prefijo 'REDIRECT_', es decir, VAR1 será REDIRECT_VAR1, VAR2 será REDIRECT_VAR2.

Por supuesto, puede (adicionalmente) redefinir el VAR original:

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

Con esto, tendrás $_SERVER['REDIRECT_VAR*']y $_SERVER['VAR*'].


Los ejemplos dados son solo para explicación, en cualquier caso, no están destinados a satisfacer sus necesidades. La "\" en los ejemplos de .htaccess son solo para fines de visualización, no deben aparecer en un archivo .htaccess real. El argumento separador ';' en los enlaces también puede ser '&', pero esto puede causar algunos problemas con HTML / XHTML. Consulte las siguientes páginas para obtener más información sobre este problema:

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.