🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo configurar el archivo settings.inc.php de PrestaShop

Actualizado el 15 de febrero de 2026

¿Qué es el archivo settings.inc.php de PrestaShop y por qué es tan importante?

Si alguna vez has gestionado una tienda online con PrestaShop, es muy probable que hayas oído hablar del archivo settings.inc.php. Este archivo es, ni más ni menos, el corazón de la configuración técnica de tu tienda. Sin él, PrestaShop no puede conectarse a la base de datos, ni conocer la URL de tu tienda, ni generar las rutas correctas para las imágenes, los módulos o los temas.

Piensa en settings.inc.php como el "cerebro" que guarda los datos de acceso a tu base de datos MySQL, la clave secreta para cifrar contraseñas y la información sobre el entorno de tu tienda (si está en modo desarrollo o en producción).

En este artículo, te voy a explicar de forma sencilla y clara cómo configurar el archivo settings.inc.php de PrestaShop, qué significa cada valor y cómo editarlo sin romper nada. Además, te daré consejos prácticos para evitar errores comunes y resolver dudas frecuentes.

Vamos a ello.


¿Dónde se encuentra el archivo settings.inc.php en PrestaShop?

Lo primero que debes saber es la ubicación exacta del archivo. Dependiendo de la versión de PrestaShop que uses, la ruta puede variar ligeramente.

En PrestaShop 1.6 y versiones anteriores

En estas versiones, el archivo se encuentra en la raíz de tu instalación, es decir, en la carpeta principal donde está instalado PrestaShop. Normalmente, la ruta es algo así:

/public_html/config/settings.inc.php

En PrestaShop 1.7 y versiones posteriores

A partir de PrestaShop 1.7, el archivo settings.inc.php fue reemplazado por varios archivos dentro de la carpeta app/config/. Sin embargo, aún existe un archivo llamado parameters.php que cumple una función similar. Pero como el artículo se centra en settings.inc.php, nos enfocaremos en las versiones 1.6 y anteriores, que son las que usan este archivo de forma nativa.

[INFO] Si tu tienda usa PrestaShop 1.7 o superior, la configuración se gestiona desde app/config/parameters.php. Aunque el concepto es similar, los nombres de las variables cambian ligeramente.


Estructura básica del archivo settings.inc.php

Antes de empezar a editar nada, es fundamental que entiendas la estructura del archivo. A continuación, te muestro un ejemplo típico de cómo se ve un settings.inc.php de PrestaShop:

<?php

define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'nombre_base_datos');
define('_DB_USER_', 'usuario_mysql');
define('_DB_PASSWD_', 'contraseña_mysql');
define('_DB_PREFIX_', 'ps_');
define('_MYSQL_ENGINE_', 'InnoDB');
define('_PS_CACHING_SYSTEM_', 'CacheMemcache');
define('_PS_CACHE_ENABLED_', '0');
define('_MEDIA_SERVER_1_', '');
define('_MEDIA_SERVER_2_', '');
define('_MEDIA_SERVER_3_', '');
define('_COOKIE_KEY_', 'tXyZ9...');
define('_COOKIE_IV_', 'aBcDe...');
define('_PS_CREATION_DATE_', '2023-01-15');
define('_PS_VERSION_', '1.6.1.24');
define('_RIJNDAEL_KEY_', '...');
define('_RIJNDAEL_IV_', '...');

Cada línea define una constante de PHP que PrestaShop utiliza en todo el sistema. Vamos a ver qué significa cada una.


Variables principales y su significado

_DB_SERVER_

Esta variable define la dirección del servidor de base de datos. En la mayoría de los casos, es localhost porque la base de datos está alojada en el mismo servidor que tu tienda. Si usas un hosting externo o una base de datos remota, aquí deberías poner la IP o el dominio del servidor de base de datos.

_DB_NAME_

Es el nombre de tu base de datos MySQL. Lo puedes encontrar en el panel de control de tu hosting, por ejemplo, en cPanel o en Syspanel.

[TIP] Si usas Syspanel (el panel de control de HestiaCP), recuerda que el acceso se realiza a través del puerto 2106. Allí podrás crear y gestionar tus bases de datos MySQL fácilmente.

_DB_USER_

Es el nombre de usuario MySQL que tiene permisos para acceder a la base de datos. Este usuario debe tener privilegios de lectura, escritura y modificación sobre la base de datos que definimos en _DB_NAME_.

_DB_PASSWD_

Es la contraseña del usuario MySQL. Debe ser exactamente la misma que la que configuraste al crear el usuario.

_DB_PREFIX_

Es el prefijo que se añade al nombre de las tablas de la base de datos. Por defecto es ps_. Si tienes varias tiendas en la misma base de datos, es recomendable usar prefijos distintos para evitar conflictos.

_MYSQL_ENGINE_

Define el motor de almacenamiento de MySQL. Los más comunes son InnoDB y MyISAM. En PrestaShop, se recomienda usar InnoDB para una mejor integridad de los datos.

_PS_CACHING_SYSTEM_ y _PS_CACHE_ENABLED_

Estas variables controlan el sistema de caché de PrestaShop. Si no usas caché, puedes dejarlas como están. Si quieres activar la caché, deberías configurarlas adecuadamente. Para la mayoría de tiendas pequeñas, lo mejor es tener _PS_CACHE_ENABLED_ en '0'.

_COOKIE_KEY_ y _COOKIE_IV_

Son claves secretas que se utilizan para cifrar las cookies de sesión de tus clientes. Nunca las compartas ni las publiques. Si cambias estas claves, todos los usuarios que estén conectados tendrán que iniciar sesión de nuevo.

_RIJNDAEL_KEY_ y _RIJNDAEL_IV_

Son las claves de cifrado utilizadas por el algoritmo Rijndael (AES). Se usan para cifrar datos sensibles como contraseñas. Al igual que las cookies, no deben compartirse.

_PS_CREATION_DATE_

La fecha en la que se instaló PrestaShop. Se utiliza para algunas funciones de estadísticas y para calcular el tiempo de vida de la tienda.

_PS_VERSION_

La versión de PrestaShop que estás utilizando. Este dato es importante para las actualizaciones automáticas.


Cómo editar el archivo settings.inc.php de forma segura

Ahora que ya sabes qué es cada cosa, vamos a ver cómo editarlo. Te recomiendo seguir estos pasos al pie de la letra para evitar errores.

Paso 1: Haz una copia de seguridad

Antes de tocar nada, haz una copia de seguridad del archivo original. Puedes hacerlo desde el administrador de archivos de tu hosting o mediante FTP.

[WARNING] Si editas el archivo y cometes un error, tu tienda podría dejar de funcionar. Una copia de seguridad te permite restaurar el archivo original en segundos.

Paso 2: Abre el archivo con un editor de texto plano

Usa un editor de texto como Notepad++, Sublime Text o Visual Studio Code. Evita editores como Word o Pages, ya que pueden añadir caracteres invisibles que rompan el archivo.

Paso 3: Realiza los cambios necesarios

Los cambios más comunes son:

  • Cambiar la contraseña de la base de datos (por ejemplo, si la has cambiado desde el hosting).
  • Cambiar el nombre de la base de datos (si has migrado de servidor).
  • Cambiar el prefijo de las tablas (si has importado una base de datos con otro prefijo).
  • Cambiar la URL de la tienda (aunque esto normalmente se hace desde el panel de administración).

Para cambiar un valor, simplemente edita el texto entre comillas simples.

Por ejemplo, si quieres cambiar la contraseña de la base de datos, busca la línea:

define('_DB_PASSWD_', 'contraseña_anterior');

Y cámbiala por:

define('_DB_PASSWD_', 'nueva_contraseña');

Paso 4: Guarda el archivo y súbelo al servidor

Guarda el archivo con la misma codificación (UTF-8 sin BOM) y súbelo al servidor, reemplazando el archivo original.

Paso 5: Prueba tu tienda

Accede a tu tienda y comprueba que todo funciona correctamente. Si ves un error de conexión a la base de datos, revisa los datos que has introducido.


Errores comunes al configurar settings.inc.php

Error "Link to database cannot be established"

Este es el error más común. Significa que PrestaShop no puede conectarse a la base de datos. Las causas más frecuentes son:

  • Datos incorrectos: Revisa _DB_SERVER_, _DB_NAME_, _DB_USER_ y _DB_PASSWD_.
  • Usuario sin permisos: Asegúrate de que el usuario MySQL tiene permisos sobre la base de datos.
  • Servidor de base de datos caído: Verifica que el servidor MySQL está activo.

[TIP] Si no sabes qué datos poner, contacta con tu proveedor de hosting. En Syspanel (puerto 2106) puedes ver los datos de acceso a tu base de datos.

Error de prefijo de tablas

Si ves errores como "Table 'ps_products' doesn't exist", es que el prefijo de las tablas no coincide con el que tienes en la base de datos. Revisa _DB_PREFIX_ y compáralo con el nombre real de las tablas.

Pantalla en blanco

Si tu tienda muestra una pantalla en blanco, puede deberse a un error de sintaxis en el archivo. Revisa que no haya espacios o caracteres extraños al principio o al final del archivo.


Buenas prácticas y consejos adicionales

No uses el bloc de notas de Windows

El bloc de notas de Windows puede añadir un BOM (Byte Order Mark) que rompe la sintaxis PHP. Usa siempre un editor avanzado.

No dejes espacios después de ?>

Si el archivo termina con ?>, no dejes ninguna línea en blanco después. Esto puede provocar errores de "headers already sent".

Mantén las claves secretas seguras

Las claves como _COOKIE_KEY_ o _RIJNDAEL_KEY_ son críticas para la seguridad de tu tienda. No las compartas en foros, soportes o con terceros.

Si cambias de servidor, actualiza todos los datos

Si migras tu tienda a un nuevo hosting, es muy probable que tengas que cambiar el servidor de base de datos, el usuario y la contraseña. Asegúrate de actualizar todos los valores en settings.inc.php.


Preguntas frecuentes (FAQ)

¿Puedo editar settings.inc.php desde el panel de administración de PrestaShop?

No, este archivo solo se puede editar de forma manual, ya sea por FTP o desde el administrador de archivos de tu hosting.

¿Qué pasa si borro el archivo settings.inc.php?

Si borras este archivo, tu tienda dejará de funcionar por completo. PrestaShop no podrá conectarse a la base de datos ni cargar ninguna página. Por eso es tan importante hacer copias de seguridad.

¿Necesito conocimientos de PHP para editarlo?

No necesitas ser un experto en PHP, pero sí debes tener cuidado al editar el archivo. Solo tienes que cambiar los valores entre comillas, sin tocar la estructura del código.

¿Cómo sé si mi hosting usa Syspanel?

Syspanel es el panel de control de HestiaCP que muchos proveedores de hosting utilizan. Si tu hosting te da acceso a un panel con ese nombre, recuerda que la URL suele incluir el puerto 2106 (por ejemplo: https://tu-dominio.com:2106).

¿Puedo cambiar el prefijo de las tablas sin romper nada?

Sí, pero debes asegurarte de que el prefijo en _DB_PREFIX_ coincida exactamente con el prefijo de las tablas en tu base de datos. Si cambias uno sin cambiar el otro, la tienda dejará de funcionar.


Conclusión

Configurar el archivo settings.inc.php de PrestaShop es una tarea sencilla si entiendes qué hace cada variable y sigues los pasos adecuados. Recuerda siempre hacer una copia de seguridad antes de editarlo, usar un editor de texto plano y verificar los datos de conexión a la base de datos.

Este archivo es esencial para el funcionamiento de tu tienda, así que tómate tu tiempo y revisa bien cada cambio. Si en algún momento tienes dudas, no dudes en consultar con tu proveedor de hosting o con un técnico especializado.

Espero que esta guía te haya sido de gran ayuda. Ahora ya sabes cómo configurar y editar settings.inc.php como todo un profesional. ¡Tu tienda online te lo agradecerá!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel