Mi tienda da error 404 si activo las urls amigables

Si tu PrestaShop da errores 404 de página no encontrada al activar las urls amigables, el error puede originarse por 2 motivos principalmente:


1. El fichero .htaccess no está correctamente generado.


  • Prueba a regenerar el archivo htaccess de nuevo para ver si se solucionar el problema. Para regenerar el htaccess debes ir a la opción Parámetros de la tienda - SEO & Urls.
  • Ve a la sección " Configuración de URLs" y deja activada la opción "Url amigable" en sí, y guarda los cambios.
  • Más abajo, en la sección "Establecer URL de la tienda" asegúrate que en las dos casillas (Dominio de la tienda y Dominio SSL) tienes correctamente puesto tu nombre de dominio y la Base URI (si tu tienda está en el raíz del hosting) tiene puesto una barra "/")
  • Una vez hayas guardado estas 2 opciones, ve a Rendimiento y limpia la caché.


Comprueba ahora si se ha solucionado el problema.


2. Si el problema persiste, asegúrate de que no tienes instalado ningún módulo tipo "Clean Urls" ó "Pretty Urls" que corrige o modifica el ID de la url de PrestaShop. 


Si tienes algún módulo de este tipo prueba a deshabilitarlo temporalmente. Luego limpia la caché y prueba de nuevo.


NOTA IMPORTANTE: Si tienes este tipo de módulos, las urls de tu tienda NO contienen el ID que PrestaShop añade por defecto a las urls de los productos y categorías. Si anulas estos módulos las urls de tu tienda cambiarán y perderás el posicionamiento en Google, por lo que si ya tienes la web indexada sin ellos, NO recomendamos anularlos.


Simplemente anúlalos temporalmente por si son los que originan el problema.


3. Asegúrate que no haya ningún archivo override que modifique las urls de PrestaShop. Estos archivos suelen estar en la carpeta "/override/classes".



Si aún así, se sigue produciendo el error, por favor asegúrate de hacer cada uno de estos pasos adicionales:



A. Comprueba a ver si las urls amigables están configuradas según la siguiente captura:



Si es así, debes hacer los cambios que detallamos en el paso C de este tutorial.


B- Renombra o elimina en la carpeta Override/Fronts estos archivos: 


SupplierController.php

ManufacturerController.php 

CmsController.php 

CategoryController.php 


C- Modifica las urls amigables que el plugin ha modificado y pone las originales de PrestaShop en MySQL utilizando PhpMyadmin, seleccionando la tabla "ps_configuration" los siguientes puntos:

PS_ROUTE_category_rule {id}-{rewrite}
PS_ROUTE_supplier_rule supplier/{id}-{rewrite}
PS_ROUTE_manufacturer_rule brand/{id}-{rewrite}
PS_ROUTE_cms_rule content/{id}-{rewrite}
PS_ROUTE_cms_category_rule content/category/{id}-{rewrite}
PS_ROUTE_product_rule {category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.html
PS_ROUTE_layered_rule {id}-{rewrite}{/:selected_filters} 


Si lo prefieres, puedes usar el propio BackOffice de PrestaShop para cambiarlas si no quieres usar PhpMyAdmin, para ello debes entrar en Parámetros de la tienda - Tráfico & SEO (SEO & URLs) y cambiar las urls por las siguientes:


-----


Ruta a los productos: {category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.html


Ruta a las categorías: {id}-{rewrite}


Ruta a los proveedores: supplier/{id}-{rewrite}


Ruta a la marca: brand/{id}-{rewrite}


Ruta a la página: content/{id}-{rewrite}


Ruta a la categoría de página: content/category/{id}-{rewrite}


-----


No olvides que se debe borrar la cache después de realizar estos cambios.


Con estos pasos la web ya no debería darte más errores 404.


Si sigues con problema después de seguir estos pasos, contacta con nuestro Soporte.