Reporte de Problema - 500 Internal Server Error

suPHP y. htaccess 500 Internal Server Error

¿Qué es suPHP es:
En la mayoría de los servidores de Apache, PHP se ejecuta como módulo de Apache. Este es el método por defecto de la instalación. Muchos anfitriones tienen esta configuración, ya que es la opción predeterminada y, potencialmente, no se dan cuenta que también es posible configurar PHP como CGI. Ejecutar PHP como CGI puede ser más segura, mientras que también evita los problemas de archivo y de directorio de propiedad.
suPHP proporciona la facilidad de tener todos los guiones que se ejecutan en la cuenta de usuario correspondiente, en lugar de en la cuenta de los servidores Web. Esta facilidad permite que el servidor a los administradores aislar y administrar el uso de secuencias de comandos malintencionadas o fuera de control muy rápidamente, evitando las secuencias de comandos no deseados o sin autorización-de correr durante un largo período de tiempo. VeloxServ suPHP utiliza en todos los servidores compartidos y reseller de hosting.

¿Qué suPHP hacer?
Permisos 777
Con configuraciones no suPHP, PHP se ejecuta como un módulo de Apache se ejecuta como el usuario / grupo del servidor web que suele ser "nadie", "httpd" o "apache". En este modo, los archivos o directorios que requieren los scripts PHP para ser capaz de escribir a necesitar ermisos 777 (de lectura / escritura / ejecución a usuario / grupo / nivel mundial). Esto no es muy segura, ya que permite que el servidor web para escribir en el fichero, sino que también permite que cualquier otra cosa para leer o escribir en el fichero.
Bajo suPHP configuraciones, PHP se ejecuta como un CGI con "suexec" activado (su = de cambio de usuario, permitiendo a un usuario para "cambiar" a otro de autorización) - La ejecución de scripts php ahora bajo su propio usuario / nivel de grupo. Archivos o directorios que requieren los scripts PHP para ser capaz de escribir en que ya no necesita tener ermisos 777. De hecho, ermisos 777 ya no se permite, tener ermisos 777 en los scripts o los directorios que residen en no funciona y en lugar de provocar un "500 Internal Server Error" cuando se intenta ejecutarlos, esto se hace para protegerlo a usted de alguien abusar de los scripts. Las secuencias de comandos y directorios ahora, sólo tienen un máximo de 755 permisos (de lectura / escritura / ejecución por usted, de lectura y ejecución por todos los demás).

Mi script requiere 777
Entonces, ¿qué acerca de los scripts PHP que dicen que requieren permisos 777 en algunos de sus directorios o archivos en el trabajo, tales como Joomla!, Foros, galerías de fotos y por igual? Debido a la naturaleza transparente de suPHP esto se soluciona muy simplemente, cualquier directorio declaró que obliga a "escribir" o "777" con seguridad se puede configurar a 755 (el máximo) en lugar. Esto se debe, ahora que el servidor web se ejecuta bajo su propia cuenta de usuario, sólo su propia cuenta de usuario completa de las necesidades escritura y ejecución.
Adiós ". Htaccess" y bienvenida ".ini" Bajo el antiguo modo de módulo de Apache era posible manipular la configuración de PHP dentro de una ". Htaccess" archivo colocado en el directorio del script de nivel superior, esto también se aplica recursivamente a todos los otros directorios por debajo de ella.
Por ejemplo, podría activar la configuración de PHP "magic_quotes_gpc" con esta línea en htaccess.:
en php_value magic_quotes_gpc Ahora, cuando PHP se ejecuta como un CGI y suPHP protegidas, manipular la configuración de PHP es aún posible, sin embargo ya no se puede hacer uso de un archivo ". Htaccess". htaccess Usando. con el prefijo de PHP requiere de "php_value" hará un "500 internal server error" al intentar acceder a las secuencias de comandos. Esto se debe a php ya no se ejecuta como módulo de Apache, por lo que Apache es incapaz de manejar las directivas por más tiempo.
Tomando nota de que AptHost utiliza suPHP, TODOS los valores php debe ser removido de su. Htaccess para evitar el error 500 servidor interno. En cambio, ahora se van a crear y utilizar su propio "php.ini local" para manipular el archivo de configuración de php deseado.
¿Qué es un archivo php.ini?
El archivo php.ini es un archivo de configuración que el servidor mira a ver qué opciones de PHP ha sido puesto a disposición del servidor o su entorno lo son, si es diferente del php.ini por defecto del servidor. Aunque el nombre puede parecer avanzada para quienes no están familiarizados con ella, es en esencia un simple archivo de texto con el nombre php.ini Cómo crear un archivo php.ini Para crear un archivo php.ini, sólo tienes que abrir un editor de texto, añadir en las líneas que necesitas y guardar el archivo. Puede nombrar el archivo de todo lo que quieras cuando se guarda, para garantizar la correcta FTP en modo de transferencia se utiliza, es posible que desee el nombre de "php.ini.txt". Una vez que haya configurado todos los ajustes, subir el archivo en el directorio donde se encuentra la secuencia de comandos y cambie el nombre de nuevo a php.ini Por ejemplo, puede activar la configuración de PHP "magic_quotes_gpc" con esta línea en el php.ini:
magic_quotes_gpc = on
En muchos casos, es posible que necesite tener varias copias del mismo archivo php.ini en diferentes directorios, a diferencia de los archivos. Htaccess, archivos php.ini no se aplican de forma recursiva para bajar directorios. Si usted necesita la misma funcionalidad en todas las directries inferior también, a continuación, tendrá que copiar el archivo php.ini cada directorio a su vez que se tiene. Scripts php que va desde dentro de ellos. Haga clic aquí para un archivo php.ini de configuración de ejemplo.

Tipos MIME:
Si ha agregado un mimetype al sistema para ejecutar archivos HTML, scripts php (como AddType. Comando htaccess), usted tendrá que quitar y agregar un ApacheHandler lugar. Esto es fácil de hacer sin embargo. Sólo tiene que acceder a su panel de control, y después haga clic en controladores de Apache y añadir lo siguiente:

Extensión: HTML (o htm)
Handler: application / x-httpd-php
La protección de su archivo php.ini:
Para proteger su php.ini debe establecer los permisos a 600. Además se puede añadir la siguiente línea a su archivo. Htaccess:

Orden negar, permiten
Denegar de todos

Solución de problemas, algo salió mal Mi script PHP no funciona o que tengo un mensaje de error.

1. Compruebe que el script php que está intentando ejecutar con permisos de no más de 755 a 644 funciona muy bien con normalidad, esto no es algo que tendrá que ser cambiado en la mayoría de los casos.
2. Compruebe que los permisos de directorio que el script se encuentra dentro se establece en un máximo de 755. Esto también incluye directorios que el guión tendría que tener acceso a también.
3. Compruebe que usted no tiene un archivo htaccess. Con php_values dentro de ella. Se hará un error 500 interno del servidor, al intentar ejecutar el script.
El php_values tendrá que ser removido de su archivo htaccess. Php.ini y poner en su lugar, que recoge las directrices php como se explicó anteriormente.

 

  • 2 Los Usuarios han Encontrado Esto Útil
¿Fue útil la respuesta?