2011-08-02 23 views
13

El administrador ha instalado Xdebug 2.1.1 en nuestro servidor PHP 5.3.0 compartido para usar su depurador. Ahora, casi no puedo leer los seguimientos de pila de excepciones uncatched porque están formateados por Xdebug con colores molestos que interactúan muy mal con CSS del sitio:Deshabilitar rastros de la pila HTML por Xdebug

Unreadable stack trace

A partir de PHP se ejecuta como módulo de Apache, que he tratado de desactivar esta función en un archivo .htaccess pero no puedo hacer que se vaya:

php_flag xdebug.default_enable Off 
php_flag xdebug.overload_var_dump Off 
php_flag xdebug.show_exception_trace Off 
php_value xdebug.trace_format 1 

phpinfo() muestra mis cambios en la columna de la valor local pero todavía se pueden ver las tablas de naranja horrible. ¿Cuál es la directiva que necesito cambiar?

+0

http://xdebug.org/docs/stack_trace – hakre

Respuesta

11

Comprobar si xdebug_disable()Docs:

Desactiva pila traza

Desactivar mostrando trazas de la pila en condiciones de error.

Véase también xdebug.default_enableDocs.

+0

'xdebug.default_enable' no tiene efecto aparente, pero llamar a' xdebug_disable() 'sobre mi código funciona bien. Veré cómo empacarlo en la configuración de mi sitio web. –

+0

Intenta poner 'xdebug.default_enable' en el php.ini del sistema, quizás eso funcione. Además, probablemente usar '0' en lugar de' off' en la configuración .htaccess también podría ayudar, pero eso es solo una suposición, no lo he probado. – hakre

+0

Muy bien ... He realizado más pruebas y la directiva * es * 'xdebug.default_enable', pero parece que hay un error en alguna parte: en el servidor de desarrollo compartido se ignora, en mi instalación local es totalmente respetado. –

9

Debe asegurarse de tener html_errors=0 en PHP también. También, naranja no es horrible ;-)

+0

No estoy seguro de lo consigo. Ya uso errores HTML, junto con 'error_prepend_string' y' error_append_string' para que pueda mostrar los datos de línea. Si lo desactivo, Xdebug no dibuja HTML, pero eso también hace que el error no se pueda leer porque todo está en una sola línea. No quiero buscar mensajes de error en la ventana * Ver código fuente ... –

+0

Muy útil si está generando json desde PHP para usar con Javascript, angular y todo eso. – Pere

+1

Si @derick responde, es mejor que escuche. Él escribió XDebug. –

6

agregar el código siguiente en el script de inicialización:

if (function_exists('xdebug_disable')) { 
      xdebug_disable(); 
     } 
+1

Tenga en cuenta que [remote_autostart] (http://xdebug.org/docs/all_settings#remote_autostart) y [remote_enable] (http: // xdebug. org/docs/all_settings # remote_enable) controlan el depurador. No tienen nada que ver con los rastros de pila. –

+0

Como dijo Álvaro, la opción n. ° 2 aquí no tiene nada que ver con mostrar la traza de la pila HTML. – rockerston

+0

Actualizado según sugerencia. – Sumoanand

Cuestiones relacionadas