Asunto: Error al mostrar página sale en blanco en Apache PHP Linux
Hola, tenía un servidor web con Linux Ubuntu Server, con Apache, PHP y MySQL. Me dijeron que CentOS va mejor y monté un servidor con CentOS Minimal + Apache + PHP + MySQL. Lo he probado y funciona bien, pero al pasar mi antigua web PHP a este servidor, al mostrarla me aparece un página en blanco y no sale error alguno ¿a qué puede ser debido? ¿cómo puedo saber el error que está dando y por qué?
Publicado:
Sab May 09, 2015 9:49 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Error al mostrar página sale en blanco en Apache PHP Lin
Anuncios
varios escribió:
Hola, tenía un servidor web con Linux Ubuntu Server, con Apache, PHP y MySQL. Me dijeron que CentOS va mejor y monté un servidor con CentOS Minimal + Apache + PHP + MySQL. Lo he probado y funciona bien, pero al pasar mi antigua web PHP a este servidor, al mostrarla me aparece un página en blanco y no sale error alguno ¿a qué puede ser debido? ¿cómo puedo saber el error que está dando y por qué?
Por cuestiones de seguridad las versiones más recientes de Apache y PHP ya no muestran el detalle del error que se está produciendo. Esto es muy recomendable tenerlo así por seguridad, si estás en depuración puedes habilitar el modo de debug para que te muestre los errores. De todas formas, antes de activar la visualización de errores, mejor revisa los log de Apache. Si estás usando una versión 5 de PHP y Apache 2.4 o superior en Linux CentOS, los log suelen estar en:
/var/log/httpd
con el nombre de fichero "error_log".
Échale un vistazo a ese fichero y nos comentas.
Publicado:
Sab May 09, 2015 9:53 am
varios Magnífico usuario
Registrado: Oct 10, 2006 Mensajes: 2092
Asunto: Re: Error al mostrar página sale en blanco en Apache PHP Lin
Anuncios
alonsojpd escribió:
Por cuestiones de seguridad las versiones más recientes de Apache y PHP ya no muestran el detalle del error que se está produciendo. Esto es muy recomendable tenerlo así por seguridad, si estás en depuración puedes habilitar el modo de debug para que te muestre los errores. De todas formas, antes de activar la visualización de errores, mejor revisa los log de Apache. Si estás usando una versión 5 de PHP y Apache 2.4 o superior en Linux CentOS, los log suelen estar en:
/var/log/httpd
con el nombre de fichero "error_log".
Échale un vistazo a ese fichero y nos comentas.
Me aparece este error continuamente:
[Sat May 09 12:36:24.345326 2015] [:error] [pid 3128] [client 192.168.1.2:63944] PHP Notice: Undefined variable: HTTP_USER_AGENT in /var/www/html/mainfile.php on line 10
[Sat May 09 12:36:24.345466 2015] [:error] [pid 3128] [client 192.168.1.2:63944] PHP Fatal error: Call to undefined function import_request_variables() in /var/www/html/mainfile.php on line 51
[Sat May 09 12:36:29.172183 2015] [:error] [pid 3091] [client 192.168.1.2:63946] PHP Notice: Undefined variable: HTTP_USER_AGENT in /var/www/html/mainfile.php on line 10
Publicado:
Sab May 09, 2015 10:05 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Error al mostrar página sale en blanco en Apache PHP Lin
Anuncios
varios escribió:
Me aparece este error continuamente:
[Sat May 09 12:36:24.345326 2015] [:error] [pid 3128] [client 192.168.1.2:63944] PHP Notice: Undefined variable: HTTP_USER_AGENT in /var/www/html/mainfile.php on line 10
[Sat May 09 12:36:24.345466 2015] [:error] [pid 3128] [client 192.168.1.2:63944] PHP Fatal error: Call to undefined function import_request_variables() in /var/www/html/mainfile.php on line 51
[Sat May 09 12:36:29.172183 2015] [:error] [pid 3091] [client 192.168.1.2:63946] PHP Notice: Undefined variable: HTTP_USER_AGENT in /var/www/html/mainfile.php on line 10
Es posible que al cambiar de servidor tengas en el nuevo CentOS una versión superior de PHP a la que usabas en el viejo servidor Linux Ubuntu. Por lo tanto puede que en tu código PHP haya funciones y variables no compatibles con la versión de PHP que estás usando.
Edita los ficheros PHP que te indica el error y ve analizando la línea donde se produce el error, por ejemplo en el primer error se ve claramente que usas HTTP_USER_AGENT para obtener el navegador del usuario. Esta variable en versiones de PHP inferiores a la 5 se usaba de la forma:
Código:
$HTTP_USER_AGENT
Ahora en las nuevas versiones se usa de esta otra forma:
Código:
$_SERVER['HTTP_USER_AGENT']
Por lo tanto has de ir revisando tu código PHP y adaptando funciones y variables obsoletas a las nuevas.
Publicado:
Sab May 09, 2015 10:09 am
varios Magnífico usuario
Registrado: Oct 10, 2006 Mensajes: 2092
Asunto: Re: Error al mostrar página sale en blanco en Apache PHP Lin
Anuncios
alonsojpd escribió:
Código:
$HTTP_USER_AGENT
Ahora en las nuevas versiones se usa de esta otra forma:
Código:
$_SERVER['HTTP_USER_AGENT']
Por lo tanto has de ir revisando tu código PHP y adaptando funciones y variables obsoletas a las nuevas.
Muchas gracias, efectivamente el primer problema lo he resuelto cambiando:
Código:
$phpver = phpversion();
if ($phpver >= '4.0.4pl1' && strstr($HTTP_USER_AGENT,'compatible')) {
if (extension_loaded('zlib')) {
ob_end_clean();
por:
Código:
$phpver = phpversion();
if ($phpver >= '4.0.4pl1' && strstr($_SERVER['HTTP_USER_AGENT'],'compatible')) {
if (extension_loaded('zlib')) {
ob_end_clean();
El segundo error veo que se produce aquí:
Código:
if (!ini_get("register_globals")) {
import_request_variables('GPC');
}
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A