2010-04-27 17 views
9

Estoy haciendo un desarrollo poco frecuente con Apache/PHP en mi máquina con Windows, así que he optado por ejecutar apache como un proceso de consola en lugar de un servicio. Sería bueno si los errores pudieran registrarse en la ventana de la consola en lugar de un archivo de registro para poder verlos de inmediato. ¿Se puede hacer esto de alguna manera? No parece que apache tenga esa capacidad incorporada y tampoco puedo encontrar un mod que hiciera esto.¿Puede Apache httpd crear errores de registro en la consola en lugar de archivos de registro en Windows?

Respuesta

3

No estoy seguro de si Apache le permitirá hacer eso, pero he intentado utilizar:

tail -f /the/apache/logfile.log?

Eso debería permitirá ver el registro en tiempo real (asumiendo que no están buffering o nada)

EDITAR: Dado que esta es una máquina Windows, lo mismo se puede hacer usando TextPad (justo tenerlo para volver a cargar automáticamente el archivo de registro en el cambio). Funcionará igual que tail

+0

Es una máquina de las ventanas, ya he dicho eso. Pero supongo que 'tail' también se puede compilar para eso. Bueno, es una opción, aunque preferiría que hubiera solo una ventana de consola. Hmm ... otra vez, probablemente me saldría con la tarea de configurarlo como un servicio y luego crear un archivo por lotes para iniciarlo, seguido de 'tail' y luego detener el servicio. O simplemente escriba mi propio programa de inicio/lectura/tapón en C#, eso es fácil. Aún así, tal vez una solución más elegante está disponible? –

+0

Me gusta esta sugerencia de esa manera usted tiene los errores en un archivo y se muestra en la consola. Pero sí, la cola es nativa de * nix, no de Windows, aunque se puede hacer que funcione en Windows, la solución más fácil que sé es cygwin –

+0

Wow Eché un vistazo por completo a la parte de Windows :(. Actualicé mi respuesta para usar TextPad, que debería trabajo –

9

Sí, puede.

editar el archivo httpd.conf a pipe la salida del registro de errores a la ventana de consola con esta directiva:

ErrorLog "|more" 
+2

No funciona en mi Windows 8. Me da error: (OS 2) El sistema no puede encontrar el archivo especificado. : AH00089: No se pudo iniciar Erro rLog proceso 'más'. AH00015: No se han podido abrir los registros – Peihui

+0

¿Alguna información sobre una solución de Windows? – Petah

+2

No se pudo iniciar el proceso ErrorLog 'más'. – user3673

2

Sólo quería actualizar esta pregunta con una respuesta que puede ser aqueja a un grupo de personas.

Escenario:

  • Ejecución de un contenedor ventana acoplable apache2
  • quieren obtener un resultado de docker run <container_id> para mostrar los registros de

Sin hablar demasiado acerca de estibador, el comando relevante que corrieron a ejecutar Apache y el espectáculo registros al mismo tiempo:

/usr/sbin/apache2 & tail -f /var/log/apache2/* 

Usted ca n modifique esto como lo necesite (estoy usando la imagen debian:jessie). Como mencioné en un comentario anterior, tiene tail para Windows y creo que el operador & también debería funcionar en Windows (no estoy seguro de esto).

Este comando bloquear su concha y mantener la brotación cosas de sus registros ...

Espero que esto ayude a alguien

+2

Creo que esto no funcionaría correctamente porque cuando intentes detener o matar este proceso (o contenedor acoplable) solo detendría el proceso final, no apache, que luego continuaría ejecutándose y no se podría iniciar la próxima vez que intentes inicia el contenedor – Dustin

Cuestiones relacionadas