Valora este artículo :
Este artículo le ha sido útil ?
Sí
No
Vous avez noté 0 étoile(s)
Sommaire
Procédure
El error 500 es un código de estado de página que significa Error Interno del Servidor. Significa que se ha producido un error en el servidor web. Puede provenir del servidor web Apache2, del intérprete PHP, que pasó el error al servidor web, o de la base de datos MySQL, que pasó el error a PHP y a su vez lo pasó al servidor web. Se ve así:
En cuanto a algunos otros navegadores, es posible que sólo vea una página en blanco sin contenido:
Para los sitios Prestashop, verá una página de error generada por Prestashop :
Para diagnosticar el problema, será más práctico para mostrar los errores directamente en su sitio web (incluso si son visibles en el archivo error.log
en la carpeta de registro
accesible a través de su cuenta FTP.
Para mostrar errores PHP, necesitará modificar el archivo php.ini
para el sitio web en cuestión. En ISPConfig, haga clic en Sitios y seleccione el sitio web en cuestión:
Luego haga clic en la pestaña "Opciones" y añada la siguiente línea en el campo "Configuración php.ini personalizada":
display_errors = On
También es aconsejable añadir la siguiente línea para asegurarse de que se informa de los errores de forma que se muestren en pantalla (en caso de que el script lo desactive por defecto)
error_reporting = E_ALL
Algunos CMS y frameworks como WordPress, Prestashop, Symfony, Laravel, etc. pueden ignorar el hecho de que display_errors
esté configurado como On
en PHP, ya que tienen sus propios sistemas de gestión de errores.
Para habilitar el modo de depuración en un sitio basado en WordPress, necesitará modificar el archivo wp-config.
php estableciendo el valor de WP_DEBUG
a true
y WP_DEBUG_DISPLAY
a true
también.
Si WP_DEBUG_DISPLAY
no está en wp-config.
php, tendrá que añadirlo después de WP_DEBUG
:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true);
Para activar el modo de depuración en Prestashop, tendrá que modificar el archivo config/defines.inc.php
. En este archivo, establezca _PS_MODE_DEV_
a true
.
define('_PS_MODE_DEV_', true);
Para activar el modo de depuración en Joomla, tendrás que modificar el archivo configuration.php
. En este archivo, establece $debug
a 1
y $error_reporting
al máximo
.
public $debug = '1'; public $error_reporting = 'máximo';
Para habilitar el modo de depuración en Laravel, es necesario modificar el archivo .env
estableciendo APP_DEBUG
a true
:
APP_DEBUG=true
A continuación, debe eliminar la caché del archivo de configuración. En tu consola, ejecuta el siguiente comando:
php artisan config:clear
El segundo paso más importante es entender los errores y encontrar una solución.
Los errores "parse error" y "syntax error" están causados por una mala escritura del código PHP: falta de punto y coma al final, paréntesis que no se cierran, comillas invertidas, etc. Deberá comprobar el script de su sitio web.
Ciertas sintaxis también pueden causar problemas sólo en ciertas versiones de PHP, porque la sintaxis PHP evoluciona entre varias versiones. Por ejemplo, el uso de corchetes para declarar un array funciona en PHP 7.2, mientras que no es el caso en PHP 7.4.
Por lo tanto, convendría comprobar yajustar la versión de PHP en función de las particularidades de su sitio web.
Cuando se produce este error, la función a la que PHP intenta llamar no existe. Este problema se produce cuando faltan archivos o están incompletos en su sitio web.
Este mensaje de error indica que la función mysql_connect
() no existe. Esta función ya no existe en PHP 7.0 y posteriores. Necesitará usar una versión PHP 5. x para que su sitio web funcione.
Cuando se produce este error, el mismo nombre de función ha sido declarado varias veces. Este problema se produce sobre todo cuando plugins, temas, módulos, etc. utilizan el mismo nombre de función.
Significa que se ha superado la memoria RAM máxima autorizada. Este problema se produce cuando se supera el memory_limit
especificado en su sitio web.
Los valores recomendados preinstalados en su paquete VPS son los siguientes:
memory_limit=1024M
(1 GB)memory_limit=2048M
(2 GB)límite_memoria=4096M
(4 GB)límite_memoria=6144M
(6 GB)límite_memoria=7168M
(7 GB)límite_memoria=8192M
(8 GB)límite_memoria=9216M
(9 GB)límite_memoria=12288M
(12 GB)Sin embargo, si quieres personalizar el valor de memory_limit
, puedes hacerlo desde ISPConfig.
En la pestaña "Opciones " de su sitio web ISPConfig, añada la línea memory_limit
a las directivas PHP.INI:
Más información sobre este tema: ¿Cómo puedo modificar el archivo php.ini en mi servidor VPS a través de ISPConfig?
Este mensaje de error está relacionado con el hecho de que su script PHP está tardando más en producir un resultado de lo que sus parámetros php .in
i permiten.
Para superar este problema, puede aumentar el tiempo máximo de ejecución. Todavía en la pestaña 'Opciones' de su sitio web ISPConfig, añada la siguiente línea a las directivas PHP.INI:
max_execution_time = 1800
Aquí hemos puesto 1800 segundos, o 30 minutos.
Importante: Si el tiempo de ejecución de PHP es demasiado largo, es posible que Apache2 no pueda esperar hasta el final. Como resultado, Apache2 enviará un error 503 a tu visitante (un error 522 o 524 si estás usando CloudFlare). Por lo tanto, es importante mantener este valor lo más bajo posible. Le aconsejamos que lo fije en 30 segundos(max_execution_time = 30), a menos que tenga previsto realizar operaciones masivas de importación o exportación en sus sitios.
Esto indica que el usuario o contraseña de MySQL que está utilizando es incorrecto.
Ejemplo de página de error "Acceso denegado" en Prestashop
Si está utilizando WordPress, el mensaje de error puede ser diferente:
Error al establecer una conexión con la base de datos
Para comprobar si una combinación de usuario y contraseña de MySQL es funcional, le sugiero que vaya a phpMyAdmin y la utilice.
Si phpMyAdmin también muestra un error como este, entonces tu usuario o contraseña de MySQL es incorrecta. Puede entonces restablecerla en ISPConfig.
Este mensaje de error está vinculado al hecho de que su sitio web está tratando de conectarse a su servidor MySQL utilizando un socket Unix en lugar de una conexión TCP.
Sin embargo, el socket Unix que está intentando utilizar no es accesible a su nivel (debido a la restricción openbase_dir
, por ejemplo).
Para resolver este problema, debe forzar a su sitio web a utilizar la conexión TCP sustituyendo "localhost
" por "127.0.0.1
" en el parámetro del servidor MySQL de su sitio web.
Para Prestashop 1.6, tendrá que editar el archivo config/settings.inc.php
:
Para Prestashop 1.7, deberá editar el archivo app/config/parameters.
php:
[...] 'database_host' => '127.0.0.1', [...]
Para un sitio WordPress, deberá editar el archivo wp-config.
php:
[...] define('DB_HOST', '127.0.0.1'); [...]
Para un sitio Joomla, tendrá que editar el archivo configuration.
php:
[...] public $host = '127.0.0.1'; [...]
Valora este artículo :
Este artículo le ha sido útil ?
Sí
No
2mn lectura
¿Cómo puedo crear una cuenta FTP en ISPConfig?
0mn lectura
Conexión SFTP
1mn lectura
¿Como activo SSL en mi sitio con ISPConfig 3?
0mn lectura
¿Cómo cambio la contraseña FTP desde IspConfig?