Foros del Web » Administración de Sistemas » Software para Servers »

[SOLUCIONADO] ERROR 500: Internal Server Error

Estas en el tema de ERROR 500: Internal Server Error en el foro de Software para Servers en Foros del Web. Hola a todos! Tengo un server KS4G con Debian Squeeze / ISPConfig. En una instalación de una tienda online con Prestashop tengo que ejecutar una ...
  #1 (permalink)  
Antiguo 22/08/2013, 12:35
 
Fecha de Ingreso: abril-2011
Mensajes: 8
Antigüedad: 13 años
Puntos: 0
ERROR 500: Internal Server Error

Hola a todos!

Tengo un server KS4G con Debian Squeeze / ISPConfig.

En una instalación de una tienda online con Prestashop tengo que ejecutar una tarea Cron de un script.php para bajar un fichero de productos de un proveedor e importarlo a una base de datos , el problema es que me da el típico ERROR 500: Internal Server Error , mensaje que por lo que parece está directamente relacionado con el "típico timing out" , es decir el limite de ejecución del servidor.

Buscando información he recopilado algunas variables de php.ini que estan relacionadas con este error y he cambiado los siguientes parámetros:

Código PHP:


max_input_time = 180
max_execution_time = 120
memory_limit = 128M

Incluso otros parámetros relacionados con descarga de ficheros

Código PHP:

upload_max_filesize = 32M
post_max_size = 32M
Para probar via ssh ejecuto el script con esta orden :

Código PHP:

wget -O /dev/null http://dominio.com/cron.php
Y al cabo de 5 minutos recibo el mensaje ERROR 500: Internal Server Error

¿ Tenéis alguna idea ?

¿ Cuál es la configuración ideal ?

¿ Que parámetros me aconsejáis modificar para solucionar este problema ?

Un saludo y muchas gracias.
  #2 (permalink)  
Antiguo 23/08/2013, 04:34
 
Fecha de Ingreso: abril-2011
Mensajes: 8
Antigüedad: 13 años
Puntos: 0
Respuesta: ERROR 500: Internal Server Error

Hola compañeros !

El problema ya está resuelto. Aquí está la solución.

Siguiendo las recomendaciones de los compañeros de foro fuí a echar un vistazo al log del servidor Apache, en realidad esta fue la primera cosa que debería haber hecho no se por que no se me habia ocurrido antes.

Después de ver el registro de errores (/ var/log/apache2/error.log en Debian Server encontré esto:

Código PHP:
[warn] [client **.**.**.**] mod_fcgid: read data timeout in 360 seconds
[error] [client **.**.**.**] Premature end of script headers: cron.php
El problema parece residir en el mod_fcgid.

Excavando en la documentación de Apache 2 para mod_fcgid me enteré de la Directiva FcgidIOTimeoutT

La configuración mod_fcgid son eliminados por host virtual, por lo que sus valores globales no se aplicarán a su host virtual .

Me puse a editar el archivo conf VirtualHost por defecto. En Debian Server, por lo general es /etc/apache2/sites-available/default.

La adición de esta línea dentro del contexto <VirtualHost>:

Código PHP:
<IfModule mod_fcgid.c>
FcgidIOTimeout 7200
</IfModule>
Reinicie Apache2 y el script funciona ahora.

Etiquetas: 500, internal, ip, php, server, servidor, servidores-web
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:04.