php - solicitud - http error 500 solucion
500 Error interno del servidor al usar.htaccess para la configuración de PHP (3)
Como decían los comentarios anteriores: necesita ejecutar su módulo php como objeto compartido dinámico para que funcione, como se describe en la documentación de solicitud de PHP Apache.
Consideraciones de DSO:
libphp proporciona directivas de Apache como php_ $ value y php_admin_ $ value. DSO es la única opción donde estas directivas serán válidas dentro de los archivos .htaccess o httpd.conf. Cuando estas directivas se compilan con el parche DSO concurrente, deben llamarse php4_ $ value y php5_ $ value en su lugar.
cgi, fcgi, suphp no funcionará.
Cuando estoy usando .htaccess
para la siguiente configuración de PHP, obtengo 500 Internal Server Error
al acceder al sitio web.
El código en el archivo .htaccess
:
php_flag display_errors off
php_flag log_errors on
El permiso de archivo para el archivo .htaccess
es 644
Sé que el código de arriba es correcto. Pero cuando me mostró el 500 Internal Server Error
, también probé un código diferente (probablemente mal), pero nada funcionó. Los diferentes códigos probados son:
php_value display_errors off
php_value log_errors on
y
php_value display_errors 0
php_value log_errors 1
¿Cuál puede ser la causa de 500 Internal Server Error
?
Después de aprender de los comentarios sobre esta pregunta, encontré que la configuración de PHP en .htaccess
no funciona con FastCGI. Entonces, para cambiar la configuración de PHP, necesito modificar el php.ini
o debo hacerlo en el código de php. ¿Hay alguna otra forma alternativa, cuando no tengo acceso para modificar el archivo php.ini
y no quiero modificar individualmente todos los archivos PHP?
Como ha descubierto, la modificación de .htaccess
solo funciona con un módulo de apache, donde se agregaría a las directivas que Apache puede entender. Esto no funcionará con cgi y otros.
La forma php es modificar el php.ini para todo el sitio, o modificarlo por directorio o por usuario.
Para php5.5 (no estoy seguro acerca de otras versiones) modifique el archivo .user.ini
en el directorio en el que quiera que se apliquen estas configuraciones. Obviamente, establecer esto en el directorio raíz del sitio haría que se aplique a todo el sitio.
Vaya aquí para obtener información sobre .user.ini: http://php.net/manual/en/configuration.file.per-user.php
Vaya aquí para consultar la lista de directivas y dónde pueden cambiarse: http://php.net/manual/en/ini.list.php
Por último, para verificar su archivo (probablemente mencionado en los comentarios), agregue un archivo phpinfo.php (el nombre no importa) que contenga
<?php phpinfo() ?>
al directorio para que pueda ver cuáles son las configuraciones para los scripts php que se ejecutan en ese directorio.
Sé que ha pasado un tiempo desde que se hizo esta pregunta, pero si su .htaccess no contiene errores, podrían ser los comentarios los que están causando su dolor de cabeza.
Recientemente actualicé WHM y de repente recibí 500 errores internos del servidor en algunas páginas. Después de revisar los registros, pude ver que el archivo .htaccess era el problema y resolví el problema ya que estaban causados por los comentarios.
Esto es lo que aclaró el problema para mí.
Anteriormente, tenía directivas en el archivo .htaccess que tenían este aspecto:
Order Deny,Allow
Deny from 52.87.112.125 # whattheme.com
Deny from 192.163.217.239 # scanwp.net
Comencé a recibir el Error interno del servidor 500 después de la actualización de WHM (probablemente se incluyó Apache en la actualización).
De repente, a Apache no le gustaron los comentarios en la línea media de las directivas. Modifiqué el archivo .htaccess para que el código de arriba se vea así:
Order Deny,Allow
# whattheme.com
Deny from 52.87.112.125
# scanwp.net
Deny from 192.163.217.239
Problema resuelto.
Puede que este no sea tu problema, pero después de una búsqueda, esta solución funcionó para mí. Buena suerte.