¿Dónde está el archivo de registro de errores httpd en Lion?

39

Estoy ejecutando un servidor web (desarrollo) local en mi mac con apache instalado.

Estoy seguro de que depende de mi configuración de Apache, pero básicamente solo quiero ejecutar tail -f /var/log/httpd-error.logen una terminal para poder ver el error y las advertencias que ocurren durante el desarrollo de mis sitios web.

Entonces, mi pregunta es dónde o cómo encuentro dónde se coloca este archivo de registro, ya que no se coloca en /var/log/

VOLAR
fuente

Respuestas:

59

Como morth señaló, por la instalación por defecto de Mac OS X Apache éstos se encuentran en: /var/log/apache2/error_log.

La ubicación se puede cambiar en la configuración httpd utilizando la directiva ErrorLog , incluso para hosts virtuales individuales. También tenga en cuenta que si instaló otro Apache además del incorporado (como a través de MacPorts o MAMP), esto probablemente también sea diferente para usted. En ese caso, debería echar un vistazo a httpd.conf o equivalente para su instalación.

tip:Si tiene Growl instalado, también eche un vistazo a este script ' growltail '. Creo que es genial recibir notificaciones de errores durante el desarrollo, sin tener la necesidad de volver a la Terminal todo el tiempo.

Gerry
fuente
3
¿Lion no usa apache2 y no apache en / var / log para contener los registros del servidor web? Además, la aplicación Consola en / Aplicaciones / Utilidades es el visor de registros "Cocoa", pero no es tan útil como la cola para la mayoría de los desarrolladores que no sea explorar el contenido de / var / log o echar un vistazo a varios registros durante períodos cortos.
bmike
6

¿Es /private/var/log/apache2/error_loglo que estás buscando?

m0rth1um
fuente
5

El registro de errores se encuentra en: /var/log/apache2/error.log

Esto es para Lion ...

Holger von Ameln
fuente
4

Normalmente es /var/log/apache2/error_logpero ...

Tenga en cuenta que hay ciertos tipos de errores que pueden ocurrir antes de que apache comience a iniciar sesión , lo que puede llevarlo a creer que está buscando en el lugar equivocado. Si parece tener problemas para iniciar Apache y no registra ningún error nuevo, intente hacer lo siguiente:

sudo bash -x /usr/sbin/apachectl -k start

o tratar

sudo apachectl -e debug

o pasar por alto el script apachectl e intentar simplemente

sudo httpd -k start
Harry Wood
fuente
3

Las respuestas anteriores funcionan muy bien para el apache predeterminado que viene preinstalado en la Mac. En mi caso, estoy usando Apache (en High Sierrra) instalado a través de Homebrew. Aquí está el procedimiento que utilicé para localizar mi registro de errores:

>ps -ef |grep httpd

Esto da una salida con líneas como esta:

502 10587 10586   0 11:11AM ??         0:00.00 /usr/local/opt/httpd/bin/httpd -k start

Eso le da la ubicación del ejecutable httpd. Ahora ejecuta:

>/usr/local/opt/httpd/bin/httpd -V

Sustituyendo en la ubicación de su ejecutable httpd. Obtendrás algo como esto (acortado)

Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/usr/local/Cellar/httpd/2.4.29_1"
 -D SUEXEC_BIN="/usr/local/opt/httpd/bin/suexec"
 -D DEFAULT_PIDLOG="/usr/local/var/run/httpd/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/usr/local/etc/httpd/mime.types"
 -D SERVER_CONFIG_FILE="/usr/local/etc/httpd/httpd.conf"

¿Entonces el "DEFAULT_ERRORLOG" está en logs/error_log- pero relativo a qué?

Ahora abra el "SERVER_CONFIG_FILE"

Allí, encontré dos entradas que podrían ser útiles:

ServerRoot "/usr/local/opt/httpd"
ErrorLog "/usr/local/var/log/httpd/error_log"

Entonces, en algunos casos, DEFAULT_ERRORLOG podría ser relativo a ServerRoot. Sin embargo, en mi caso, había un ErrorLog especificado explícitamente (segunda línea) y ahí es donde van mis errores.

Witt
fuente
0
#/usr/sbin/httpd -V
Server version: Apache/2.2.24 (Unix)
Server built:   Aug 24 2013 21:10:43
Server's Module Magic Number: 20051115:31
Server loaded:  APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.4.5, APR-Util 1.3.12
Architecture:   64-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_FLOCK_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/usr"
 -D SUEXEC_BIN="/usr/bin/suexec"
 -D DEFAULT_PIDLOG="/private/var/run/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/private/var/run/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/private/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"

#find / -name error_log
Jack D You
fuente