DirectAdmin y PrestaShop: Solución a errores comunes de instalación
Antes de Empezar: ¿Por Qué DirectAdmin y PrestaShop son un Gran Equipo?
Si estás leyendo esto, es muy probable que hayas decidido lanzar tu tienda online con PrestaShop y que tu proveedor de hosting utilice el panel de control DirectAdmin. Es una combinación potentísima y muy común en el mundo del hosting, pero a veces, la instalación puede convertirse en un pequeño dolor de cabeza.
No te preocupes, has llegado al lugar correcto. En esta guía extensa y detallada, vamos a desglosar los errores más comunes que aparecen al instalar PrestaShop en DirectAdmin y, lo más importante, te daremos la solución paso a paso para que tu tienda esté funcionando en un abrir y cerrar de ojos.
Mi objetivo es que entiendas qué está pasando y cómo solucionarlo, sin necesidad de ser un experto en servidores. Vamos a ello.
Requisitos Previos: La Base de una Instalación Exitosa
Antes de lanzarnos a apagar fuegos, es fundamental que verifiquemos que tu servidor cumple con los requisitos mínimos. Muchos de los errores de instalación no son más que la consecuencia de un servidor que no está preparado para ejecutar PrestaShop correctamente.
Versiones de PHP y Extensiones Necesarias
PrestaShop es un software que evoluciona, y cada versión requiere una versión de PHP específica. Aquí tienes un resumen rápido:
- Para PrestaShop 8.x (la versión actual): Necesitas PHP 7.2.5 o superior, siendo PHP 8.1 la opción más recomendada y estable.
- Para PrestaShop 1.7.x: Funciona bien con PHP 7.1 a 7.4.
Además de la versión, necesitas que ciertas extensiones de PHP estén activas. Las más críticas son:
pdo_mysql(para conectar con la base de datos).curl(para comunicaciones externas, como módulos de pago).openssl(para la seguridad de las conexiones).gdoimagick(para procesar imágenes y generar miniaturas).zip(para instalar módulos y temas).mbstring(para el manejo de caracteres especiales, como tildes).
[WARNING]: Si tu versión de PHP es demasiado antigua o te faltan extensiones, la instalación fallará o verás errores extraños. Es la causa del 80% de los problemas.
Cómo Cambiar la Versión de PHP en DirectAdmin
DirectAdmin facilita el cambio de versión de PHP. Sigue estos pasos:
- Accede a tu panel de DirectAdmin.
- Busca la sección "Administrador de cuentas" o "Configuración de PHP" (el nombre puede variar según la versión de DirectAdmin, pero suele estar en el menú principal).
- Selecciona el dominio donde vas a instalar PrestaShop.
- Verás una lista de versiones de PHP disponibles. Elige la que necesites (idealmente PHP 8.1).
- Guarda los cambios.
DirectAdmin se encargará de actualizar la configuración automáticamente. Es un proceso que tarda unos segundos.
El Error Más Común: Problemas con los Permisos de Archivos y Carpetas
Este es, sin duda, el error más repetido cuando hablamos de prestashop directadmin permisos. Verás errores como "No se puede escribir en el archivo", "Permiso denegado" o pantallas en blanco. Esto ocurre porque los archivos de PrestaShop deben tener los permisos correctos para que el servidor pueda leerlos, escribirlos y ejecutarlos.
La Configuración de Permisos Correcta
La regla general para PrestaShop en un entorno de hosting compartido (que es el caso de la mayoría de DirectAdmin) es la siguiente:
- Carpetas (Directorios): Permisos 755.
- Archivos: Permisos 644.
Existe una excepción importante: la carpeta config y la carpeta cache (o var/cache en versiones modernas) a veces necesitan permisos 777 durante la instalación, pero es algo que deberías revertir a 755 después para mayor seguridad.
Cómo Corregir los Permisos Paso a Paso
Tienes dos formas de hacerlo: por línea de comandos (SSH) o desde el Administrador de Archivos de DirectAdmin.
Método 1: Usando el Administrador de Archivos (Recomendado para Principiantes)
- Entra en tu panel de DirectAdmin.
- Ve a "Administrador de Archivos".
- Navega hasta la carpeta donde has subido PrestaShop (normalmente
public_htmlo una subcarpeta). - Selecciona todos los archivos y carpetas (puedes usar el botón "Seleccionar todo").
- En la parte superior o inferior, busca el botón de "Cambiar permisos" o "Chmod".
- Se abrirá una ventana. Marca la casilla que dice algo como "Aplicar a todos los archivos y carpetas" o "Recursivo".
- Introduce los permisos 755 para las carpetas y 644 para los archivos. Algunos gestores te permiten hacerlo en un solo paso.
Método 2: Usando SSH (Para Usuarios más Avanzados)
Si tienes acceso SSH, esto es mucho más rápido. Conecta a tu servidor y ejecuta estos comandos desde la raíz de tu instalación de PrestaShop:
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
[TIP]: Después de la instalación, es una buena práctica de seguridad volver a revisar los permisos. Asegúrate de que los archivos como config/settings.inc.php tengan permisos 444 (solo lectura) para evitar que sean modificados.
Error de Conexión a la Base de Datos: Credenciales Incorrectas o Usuario no Creado
Durante la instalación, PrestaShop te pedirá los datos de tu base de datos. Es muy común equivocarse aquí o no haber creado la base de datos en DirectAdmin.
Crear una Base de Datos en DirectAdmin
- En tu panel de DirectAdmin, busca la sección "Gestión de MySQL" o "Bases de datos MySQL".
- Haz clic en "Crear nueva base de datos".
- Te pedirá un nombre. DirectAdmin normalmente añadirá un prefijo con tu nombre de usuario (ej.
usuario_nombrebd). - Te pedirá un usuario y una contraseña. Crea un usuario específico para esta base de datos (ej.
usuario_presta) y una contraseña fuerte. - IMPORTANTE: Asegúrate de marcar la casilla "Todos los privilegios" (ALL PRIVILEGES) para que PrestaShop pueda crear sus tablas sin problemas.
Datos que Debes Introducir en el Instalador de PrestaShop
Cuando el instalador te pregunte, asegúrate de copiar exactamente los nombres que te ha dado DirectAdmin:
- Dirección del servidor de base de datos: Normalmente es
localhost, pero a veces puede ser un nombre comolocalhosto127.0.0.1. Si no funciona, prueba con el nombre de tu servidor MySQL. - Nombre de la base de datos: El nombre completo, incluyendo el prefijo (ej.
usuario_nombrebd). - Usuario de la base de datos: El nombre completo del usuario (ej.
usuario_presta). - Contraseña de la base de datos: La contraseña que elegiste.
- Prefijo de las tablas: Te recomendamos cambiarlo de
ps_a algo más personalizado comoshop_para mayor seguridad.
[WARNING]: Un error muy común es usar el nombre de usuario de DirectAdmin en lugar del nombre de usuario de la base de datos. Son cosas diferentes. Presta mucha atención a esto.
Errores de PHP: "Fatal Error", "Memory Limit" y Pantallas en Blanco
Estos errores son frustrantes porque a veces no dicen nada más que "Error 500" o una página en blanco. La causa suele ser un límite de memoria PHP demasiado bajo o una configuración de PHP incorrecta.
Aumentar el Límite de Memoria PHP
PrestaShop es un software que consume muchos recursos, especialmente en el panel de administración. Si ves errores como "Allowed memory size of X bytes exhausted", significa que necesitas aumentar el límite.
Puedes hacerlo de varias maneras, pero la más fácil en DirectAdmin es a través de la configuración de PHP que vimos antes. Busca la opción memory_limit y cámbiala a 256M o incluso 512M.
Otra forma es crear o modificar un archivo llamado php.ini en la raíz de tu instalación de PrestaShop y añadir esta línea:
memory_limit = 512M
Otras Configuraciones Útiles de PHP
Además del límite de memoria, estas son otras configuraciones que pueden causar problemas:
max_execution_time: Auméntalo a300o más para evitar que la instalación se detenga por tiempo de espera.upload_max_filesize: Si vas a subir productos con imágenes muy grandes, auméntalo a64Mo128M.post_max_size: Debe ser ligeramente superior al valor deupload_max_filesize.
El Instalador se Queda en "Paso 3" o "Paso 4" (Creación de Tablas)
Este es otro clásico. El proceso de instalación empieza bien, pero se detiene al crear las tablas de la base de datos. Esto suele estar relacionado con el tiempo de ejecución de PHP o con un problema en el motor de la base de datos.
Solución para el Tiempo de Ejecución
Como mencionamos antes, asegúrate de que max_execution_time esté configurado a un valor alto (300 o más). Si no puedes cambiarlo, a veces funciona refrescar la página del instalador (F5) y continuar. Es un truco feo, pero funciona a veces.
Problemas con el Motor de Base de Datos
PrestaShop necesita que MySQL use el motor InnoDB. En algunos servidores antiguos, el motor predeterminado es MyISAM, lo que causa errores. Para solucionarlo:
- Accede a phpMyAdmin desde DirectAdmin.
- Selecciona tu base de datos.
- Ve a la pestaña "Operaciones".
- Busca la opción "Motor de almacenamiento" o "Collation" y cámbialo a InnoDB.
[INFO]: Si no ves la opción de cambiar el motor, es probable que tu servidor ya use InnoDB por defecto, así que este no es tu problema.
El Error de "No se Puede Conectar a la Base de Datos" en el Front Office
Este error aparece cuando ya has instalado PrestaShop, pero al entrar a tu tienda ves el mensaje "No se puede conectar a la base de datos". Esto es diferente al error de instalación.
Causas y Soluciones
- Credenciales Cambiadas: ¿Has cambiado la contraseña de MySQL recientemente? Si es así, tendrás que actualizar el archivo
config/settings.inc.phpde PrestaShop con las nuevas credenciales. - Servidor MySQL Caído: Es raro, pero puede pasar. Contacta con tu proveedor de hosting para verificarlo.
- Archivo de Configuración Corrupto: Puede que el archivo
settings.inc.phpesté dañado. La solución más sencilla es restaurar una copia de seguridad o, si no tienes, reinstalar PrestaShop (lo cual es un poco drástico, pero efectivo).
Problemas con las URLs Amigables (Mod_Rewrite)
Después de instalar, puedes encontrarte con que las URLs amigables no funcionan y te dan un error 404. Esto es un problema de configuración del servidor web (Apache).
Cómo Activar Mod_Rewrite en DirectAdmin
- En tu panel de DirectAdmin, ve a "Configuración de dominio".
- Busca tu dominio y haz clic en "Administrar".
- Busca la opción de "Apache" o "Reescritura de URLs".
- Asegúrate de que la casilla de "Mod_Rewrite" esté marcada.
- Guarda los cambios.
También puedes crear un archivo .htaccess en la raíz de tu instalación de PrestaShop. El propio PrestaShop genera este archivo durante la instalación, pero a veces no se crea correctamente. Puedes generar uno manualmente desde el panel de administración de PrestaShop en Parámetros Avanzados > Rendimiento y haciendo clic en "Guardar" para forzar la regeneración.
Errores Comunes Después de la Instalación: La Tienda se Ve Sin Estilos
Este es un problema muy visual: la tienda carga, pero se ve como un texto plano sin colores ni imágenes. Esto es un problema con las rutas de los archivos CSS y JavaScript.
Solución: Forzar la Regeneración de las Rutas
- Accede a tu panel de administración de PrestaShop (ej.
tudominio.com/admin123). - Ve a "Parámetros Avanzados" > "Rendimiento".
- En la sección "Caché", asegúrate de que esté desactivada (en "No").
- En la sección "Combinar archivos JavaScript" y "Combinar archivos CSS", desactiva ambas opciones.
- Guarda los cambios.
Esto forzará a PrestaShop a usar las rutas directas a los archivos, solucionando el problema de los estilos.
Preguntas Frecuentes (FAQ) sobre DirectAdmin y PrestaShop
Aquí te dejo una recopilación de las dudas más habituales que nos llegan al soporte técnico. Seguro que alguna te suena.
¿Puedo instalar PrestaShop en un subdominio con DirectAdmin?
Sí, perfectamente. El proceso es el mismo, solo que en lugar de subir los archivos a public_html, los subes a la carpeta del subdominio (ej. public_html/tienda o una carpeta creada desde DirectAdmin para el subdominio). Solo asegúrate de que la base de datos sea nueva y no la compartas con otro sitio.
¿Qué hago si me aparece "Error 500" al acceder a mi tienda?
El error 500 es genérico y puede tener muchas causas. Lo primero es revisar el archivo logs de tu servidor. En DirectAdmin, puedes encontrar los logs en la sección "Administrador de logs" o a través de SSH en la carpeta /var/log/. La causa más común es un problema de permisos (ya lo hemos visto) o un error de PHP. Si no encuentras el log, contacta con tu soporte de hosting, ellos podrán ver el error exacto.
¿Es necesario usar la última versión de PHP para PrestaShop?
No es necesario, pero sí altamente recomendable. Las versiones antiguas de PHP ya no reciben soporte de seguridad, lo que pone en riesgo tu tienda. Además, PrestaShop funciona más rápido y con menos errores en versiones modernas como PHP 8.1.
¿Puedo cambiar la versión de PHP después de haber instalado PrestaShop?
Sí, puedes hacerlo en cualquier momento desde DirectAdmin. Sin embargo, es crítico que hagas una copia de seguridad completa de tu tienda (archivos y base de datos) antes de hacer el cambio. Si la nueva versión de PHP no es compatible con algún módulo, podrías tener problemas y necesitar revertir el cambio.
El instalador no avanza del paso 2, ¿qué hago?
Esto suele estar relacionado con el tiempo de ejecución de PHP o con un problema de permisos en la carpeta var/cache o cache. Asegúrate de haber seguido los pasos de permisos que te he indicado al principio y de haber aumentado el max_execution_time. Si el problema persiste, prueba a subir los archivos de PrestaShop de nuevo, ya que podría haberse subido algún archivo incompleto.
¿Qué es Syspanel y en qué se diferencia de DirectAdmin?
[INFO]: Syspanel (que antes se llamaba HestiaCP) es otro panel de control de hosting. Es una alternativa a DirectAdmin. Si tu hosting usa Syspanel, el acceso se realiza
