Configurar la URL amigable (rewrite) de PrestaShop en cPanel
¿Por qué son importantes las URLs amigables en PrestaShop?
Las URLs amigables son esenciales para el posicionamiento web de tu tienda. Si alguna vez has visto una dirección web con números y sÃmbolos extraños como index.php?id_product=42&controller=product, sabes que no son nada atractivas ni para los usuarios ni para Google.
Cuando activas las URLs SEO PrestaShop, las direcciones se convierten en algo como /zapatillas-de-running-42. Esto tiene múltiples beneficios:
- Mejor experiencia de usuario: tus clientes entienden qué van a encontrar antes de hacer clic.
- Mayor tasa de clics: las URLs limpias se ven más profesionales en los resultados de búsqueda.
- Mejor indexación: Google y otros buscadores prefieren URLs descriptivas y legibles.
- Compartir enlaces: es mucho más fácil compartir una URL limpia en redes sociales o por email.
El motor que hace posible este cambio se llama mod_rewrite, un módulo de Apache que reescribe las URLs dinámicas en versiones estáticas y amigables. En este artÃculo te explico paso a paso cómo configurarlo en cPanel, incluso si no tienes experiencia técnica avanzada.
Requisitos previos antes de empezar
Antes de lanzarte a configurar las URLs amigables PrestaShop cPanel, asegúrate de cumplir estos requisitos:
- Tener acceso a cPanel de tu hosting (normalmente en
tudominio.com/cpanel). - Tener acceso al panel de administración de PrestaShop (la URL suele ser
tudominio.com/admino similar). - Saber cuál es la versión de PrestaShop que usas. Esto es importante porque la configuración puede variar ligeramente entre versiones.
- Tener una copia de seguridad de tu tienda, especialmente de los archivos
.htaccessy de la base de datos.
[WARNING] Si no tienes experiencia editando archivos de configuración, te recomiendo hacer una copia de seguridad completa antes de continuar. Un error en el archivo
.htaccesspuede dejar tu tienda inaccesible temporalmente.
Paso 1: Activar las URLs amigables en el panel de PrestaShop
El primer paso es activar la opción de URLs amigables desde el propio panel de administración de PrestaShop. Sigue estos pasos:
- Accede al panel de administración de tu tienda.
- Ve al menú Parámetros avanzados → SEO y URLs.
- En la sección Configuración de URLs amigables, verás un interruptor o checkbox llamado Activar URLs amigables.
- ActÃvalo y pulsa en Guardar.
En versiones más recientes de PrestaShop, es posible que el sistema genere automáticamente las URLs después de guardar. Si todo funciona, verás un mensaje de confirmación.
[TIP] Si tu versión de PrestaShop es anterior a la 1.7, la opción puede estar en Preferencias → SEO y URLs. El proceso es muy similar.
Paso 2: Configurar mod_rewrite en cPanel
Ahora viene la parte técnica. Para que las URLs SEO PrestaShop funcionen, Apache necesita tener activado el módulo mod_rewrite. En la mayorÃa de hostings compartidos con cPanel, este módulo ya está activado, pero es bueno verificarlo.
Verificar si mod_rewrite está activo
- Entra en cPanel con tus credenciales.
- Busca la sección Software o Avanzado y haz clic en Select PHP Version o MultiPHP Manager (depende de tu proveedor).
- En la lista de módulos, busca
mod_rewrite. Si aparece, está activado. - Si no aparece, puedes intentar activarlo desde Apache Handlers o contactar con tu proveedor de hosting.
[INFO] Si no encuentras la opción de activar
mod_rewrite, no te preocupes. En la mayorÃa de los casos, ya está activado por defecto. Lo importante es que el archivo.htaccessesté bien configurado.
Paso 3: El archivo .htaccess de PrestaShop
El archivo .htaccess es el corazón de las URLs amigables. Es un archivo de configuración que le dice a Apache cómo manejar las peticiones. PrestaShop genera este archivo automáticamente cuando activas las URLs amigables, pero a veces hay que crearlo o editarlo manualmente.
Localizar el archivo .htaccess
El archivo .htaccess se encuentra en la raÃz de tu instalación de PrestaShop, normalmente en /public_html/ o en la carpeta donde instalaste tu tienda (por ejemplo, /public_html/tienda/).
Para verlo desde cPanel:
- Entra en Administrador de archivos (File Manager).
- Ve a la carpeta raÃz de tu PrestaShop.
- Busca el archivo
.htaccess. Si no lo ves, activa la opción Mostrar archivos ocultos (normalmente hay un botón en la parte superior derecha).
Contenido tÃpico del .htaccess de PrestaShop
Un .htaccess de PrestaShop tiene varias secciones. La más importante para las URLs amigables es la que contiene las reglas de reescritura. Un ejemplo básico serÃa:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^api/ - [L]
RewriteRule ^ - [E=REWRITEBASE:/]
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/$1 [L]
RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [L]
</IfModule>
No te asustes si el tuyo es diferente. PrestaShop genera reglas especÃficas según la versión y la configuración.
Paso 4: Regenerar el .htaccess desde PrestaShop
La forma más segura de configurar el .htaccess es dejar que PrestaShop lo genere. Para ello:
- Ve a Parámetros avanzados → SEO y URLs.
- En la parte inferior, busca la opción Guardar o Regenerar el archivo .htaccess.
- Pulsa el botón y PrestaShop creará el archivo automáticamente con las reglas correctas.
[WARNING] Si PrestaShop no puede escribir en el archivo
.htaccess, puede que tengas problemas de permisos. Los permisos recomendados son 644 para el archivo y 755 para las carpetas. Puedes cambiarlos desde el Administrador de archivos de cPanel.
Paso 5: Configurar el archivo .htaccess manualmente (si es necesario)
Si PrestaShop no genera el archivo automáticamente o si tienes problemas, puedes crearlo manualmente. Sigue estos pasos:
- En el Administrador de archivos, crea un nuevo archivo llamado
.htaccessen la raÃz de tu PrestaShop. - Pega el siguiente código base:
# ~~start~~ Do not remove this comment, PrestaShop will keep automatically the code outside this comment when .htaccess will be generated again
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^api/ - [L]
RewriteRule ^ - [E=REWRITEBASE:/]
RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/$1 [L]
RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [L]
</IfModule>
# ~~end~~ Do not remove this comment, PrestaShop will keep automatically the code outside this comment when .htaccess will be generated again
- Guarda el archivo y pruébalo en tu navegador.
[TIP] Si tu tienda está en una subcarpeta (por ejemplo,
tudominio.com/tienda), cambiaRewriteBase /porRewriteBase /tienda/.
Paso 6: Verificar que las URLs amigables funcionan
Después de activar las URLs amigables y configurar el .htaccess, es hora de comprobar que todo funciona correctamente.
- Abre tu tienda en el navegador.
- Navega a una categorÃa o producto. La URL deberÃa verse limpia, por ejemplo:
tudominio.com/zapatillas-deportivas. - Si ves una URL con
index.php, algo no está funcionando bien. - Prueba a acceder a una página desde el menú de navegación para asegurarte de que no hay errores 404.
[WARNING] Si ves un error 500 o la página en blanco, el archivo
.htaccesspuede tener errores. Revisa que no haya espacios adicionales o lÃneas incorrectas. También puedes desactivar temporalmente las URLs amigables desde el panel de PrestaShop para recuperar el acceso.
Solución de problemas comunes
Error 404 en todas las páginas
Este es el problema más común. Suele deberse a que el .htaccess no se ha generado correctamente o no existe. Solución:
- Ve a Parámetros avanzados → SEO y URLs.
- Desactiva las URLs amigables y guarda.
- Vuelve a activarlas y guarda de nuevo.
- Esto deberÃa regenerar el archivo
.htaccess.
La tienda funciona pero las URLs no son amigables
Si la tienda funciona pero las URLs siguen siendo dinámicas, verifica:
- Que el archivo
.htaccessexiste en la raÃz correcta. - Que el módulo
mod_rewriteestá activado. - Que el archivo tiene permisos de lectura (644).
Error 500 (Internal Server Error)
Este error suele indicar un problema en el .htaccess. Las causas más comunes son:
- LÃneas con errores de sintaxis.
- Directivas no permitidas en tu hosting.
- Conflicto con otras reglas.
Solución: reemplaza el archivo .htaccess por una versión mÃnima y ve añadiendo reglas poco a poco.
Preguntas frecuentes (FAQ)
¿Puedo usar URLs amigables si mi hosting no tiene mod_rewrite?
No. El módulo mod_rewrite es imprescindible para que funcionen las URLs amigables. Si tu hosting no lo tiene, deberÃas cambiar de proveedor o contactar con soporte para activarlo.
¿Las URLs amigables afectan al rendimiento de mi tienda?
El impacto en el rendimiento es mÃnimo. De hecho, las URLs limpias pueden mejorar el rendimiento percibido por los usuarios al ser más cortas y fáciles de recordar.
¿Puedo personalizar las URLs de mis productos?
SÃ. En PrestaShop puedes editar la URL de cada producto desde la ficha del producto, en la pestaña SEO. Puedes cambiar la palabra clave de la URL para que sea más descriptiva.
¿Qué hago si tengo HestiaCP en lugar de cPanel?
Si tu hosting usa Syspanel (antes conocido como HestiaCP), el proceso es similar pero con algunas diferencias en la interfaz. Accede a Syspanel a través del puerto 2106 (por ejemplo, tudominio.com:2106). Desde ahà puedes acceder al Administrador de archivos y editar el .htaccess como hemos explicado. El módulo mod_rewrite suele estar activado por defecto en Syspanel.
¿Necesito conocimientos avanzados para hacer esto?
No. Si sigues los pasos de esta guÃa, puedes configurar las URLs amigables en unos 15-20 minutos, incluso sin experiencia técnica. Solo necesitas acceso a cPanel y al panel de PrestaShop.
Consejos finales para mejorar el SEO con URLs amigables
Una vez que tengas las URLs SEO PrestaShop funcionando, te recomiendo:
- Elimina palabras vacÃas de las URLs como "y", "el", "de", etc. PrestaShop lo hace automáticamente.
- Usa palabras clave descriptivas en las URLs de productos y categorÃas.
- Mantén las URLs cortas pero informativas.
- Configura redirecciones 301 si cambias la estructura de URLs para no perder posicionamiento.
- Revisa que no haya contenido duplicado por URLs alternativas.
Conclusión
Configurar las URLs amigables PrestaShop cPanel es un proceso sencillo si sigues los pasos adecuados. Lo más importante es tener el archivo .htaccess bien configurado y el módulo mod_rewrite activado.
Recuerda que las URLs limpias no solo mejoran tu posicionamiento en Google, sino que también ofrecen una mejor experiencia a tus clientes. Si has seguido esta guÃa, tu tienda deberÃa estar mostrando URLs amigables en cuestión de minutos.
Si encuentras algún problema, no dudes en consultar la documentación oficial de PrestaShop o contactar con tu proveedor de hosting. ¡Buena suerte con tu tienda online!
