En un servidor Linux que ejecuta Apache y PHP 5, tenemos varios hosts virtuales con archivos de registro separados. Parece que no podemos separar el php error_log
entre hosts virtuales.
Anular esta configuración en el <Location>
de httpd.conf
no parece hacer nada.
¿Hay alguna forma de tener php separado error_logs
para cada host virtual?
linux
apache
virtualhost
Michael Stum
fuente
fuente
httpd.conf
que está escrito, o?Si alguien viene a buscar, debería verse así:
Esto es solo para desarrollo ya que
display_error
está activado. Notará que el registro de errores de Apache está separado del registro de errores de PHP. Lo bueno está enphp.error.log
.Eche un vistazo aquí para obtener la
error_reporting
clave http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reportingfuente
Por lo general basta con especificar esto en un
.htaccess
archivo o lavhost.conf
en el dominio que estoy trabajando. Agregue esto a uno de estos archivos:fuente
php_admin_value
yphp_value
?El comportamiento predeterminado de error_log () es enviar al registro de errores de Apache. Si esto no está sucediendo, verifique la configuración de php.ini para la directiva error_log. Déjelo sin configurar para usar el archivo de registro de Apache para el vhost actual.
fuente
No establezca
error_log
dóndesyslog
van sus cosaseg /var/log/apache2
, porque los errores serán interceptados porErrorLog
. En su lugar, cree un archivosubdir
en la carpeta de su proyecto para los registros y hágalophp_value
error_log "/path/to/project/logs"
. Esto se.htaccess
aplica tanto a archivos como a vhosts . También asegúrese de que usted ponephp_flag
log_errors
enfuente
¿Ha intentado agregar el
php_value error_log '/path/to/php_error_log
a su configuración de VirtualHost?fuente
Si, puedes intentarlo
en
.htaccess
o puede hacer que los usuarios utilicenini_set()
al principio de sus scripts si quieren tener un registro.Otra opción sería permitir que los scripts se establezcan de forma predeterminada
php.ini
en la carpeta con el script, luego ir a la carpeta raíz del usuario / host, luego a la raíz del servidor o algo similar. Esto permitiría a los hosts agregar sus propiosphp.ini
valores y sus propiaserror_log
ubicaciones.fuente
Me funciona, pero tengo que cambiar el permiso del archivo de registro.
o Apache escribirá el registro en its
error_log
.fuente
Mi Apache tenía algo como esto en httpd.conf. Simplemente cambie la configuración de ErrorLog y CustomLog
fuente
Puedes probar:
Pero no estoy seguro de si va a funcionar. Probé en mis sitios sin éxito.
fuente
Crear VirtualHost simple:
ejemplo de nombre de host: -
thecontrolist.localhost
C: \ Windows \ System32 \ drivers \ etc
127.0.0.1 thecontrolist.localhost
en el archivo de hostsC: \ xampp \ apache \ conf \ extra \ httpd-vhosts.conf
No olvide reiniciar su apache. para más ver este enlace
fuente