Ayer tenía que ir al Centro de salud, que está en la otra punta de la urbe, por lo que tardo cuarenta y cinco minutos en llegar o más, depende del tráfico. Como no tengo ni la más remota idea puse el GPS para ir de copiloto controlando la senda y observé que cada pocos kilómetros la Aplicación tenía que “recalcular” la ruta y si la aplicación se actualiza periódicamente como es de aguardar, las rutas sugeridas deberían ser las buenas…
Hablemos de Redirecciones en .htaccess para PrestaShop que nos asistan a gestionar errores cuatrocientos cuatro, corregir cambios de dominios y reconducir urls viejas a urls nuevas.
¿Que pasa si tenias una Tienda en PrestaShop con el dominio comidadeperros.es y pasaste a llamarla dcdistribuciones.es por cuestiones comerciales? pues si hiciste bien las cosas y aplicaste las redirecciones 301 apropiadamente, ahora los visitantes de tu tienda tienen que poder llegar a los productos que tenias indizados en Google (y demás buscadores web) y así evitar los temidos fallos 404en PrestaShop.
Las redirecciones, tan esenciales y tan ignoradas muchas veces por los usuarios que cambian de dominio, de CMS, que suprimen categorías o las fusionan, que aprenden SEO on-page a trompicones y van detectando los “gazapos” que han ido dejando por el camino.
¡Es hora de ponerse en acción y hacer bien las redirecciones!, Google, Bing, tus compradores y tu posicionamiento lo agradecerán
¿nos ponemos a ello?
Si aún no tienes claro que es una redirección,donde te lo explico para que lo refresques en tu memoria y puedas comprender mejor lo que se trata en este nuevo artículo.
Cuando instalas PrestaShop 1.6.x en un Alojamiento, se produce un archivo
.htaccessque por defecto contiene determinada información a fin de que la web funcione apropiadamente.
A partir de este punto y dependiendo de tu instalación, el fichero puede contener más o bien menos instrucciones.
Si tienes las URLs amigables habilitadas en
Preferencias,
SEO y URLs, en el apartado
Configuración de los enlacesy el fichero .htaccess no existe, te encontrarás con un fallo 404 al tratar de cargar la página web.
Not Found
The requested URL /es/ was not found on this server.
Additionally, a 404 Not Found fallo was encountered while trying to use an ErrorDocument to handle the request.
Esto acostumbra a ocurrir cuando se traslada una web de Hosting y no se ha habilitado previamente la vista de archivos ocultos, lo que provoca que nos dejemos el archivo .htaccess por el camino en el proceso de traslado de la web, así sea desde una instalación local (tu computador) o bien de un servidor diferente del presente.
Si deseas saber como eludir dejarte los archivos ocultos para atrás por no verlos, consulta el artículo del blog
Una de las primeras redirecciones que debes tener incluidas en tu archivo
.htaccesses la redirección del dominio sin alias
wwwal dominio con alias “www” o bien al contrario, en dependencia de si deseas ver la página web con o bien sin alias www.
Nota Por defecto PrestaShop (tampoco otros Content Management System) realizan esta clase de redirecciones de forma automática salvo que se indique.
El archivo .htaccess es un
archivo dinámicoque se produce y regenera a medida que efectuamos cambios en
Preferencias,
SEO y URLS, con lo que cambios aplicados en este apartado pueden alterar el contenido de .htaccess sin que te des cuenta de ello a menos que vigiles o revises dicho fichero.
Importante La recomendación siempre y en toda circunstancia es la de hacer una backup de dicho fichero antes de regenerar urls.
Por defecto PrestaShop añade en la primera línea del fichero .htaccess lo siguiente:
Y debajo pone todo lo relacionado con
mod_rewrite, Domain, Images, Dispatcher,
mod_expires,
mod_headersy otros códigos, cerrando el fichero con la siguiente línea:
Las redirecciones en este archivo lo idóneo es añadirlas antes de la primera línea citada:
Algo bastante habitual es que una instalación de PrestaShop no esté necesariamente en la carpeta principal del Alojamiento web, que en paneles de Hosting basados en cPanel es
public_html.
Si en tu Alojamiento web tienes varias webs, sean todas instalaciones de PrestaShop o una mezcla de varios gestores de contenidos (WordPress, Joomla!, etcétera es bastante probable que tengas las instalaciones en carpetitas separadas, incluida la instalación del dominio primordial.
En casos así lo conveniente es que las redirecciones estén en el fichero .htaccess de la carpeta principal del Alojamiento, en este caso /public_html donde lo primero que debe figurar son los códigos precisos para redireccionar el dominio primordial a una carpeta y debajo todas las redirecciones 301 que por razones diferentes tengas que aplicar para que tu página web funcione de forma correcta y no pierdas visitas por errores 404, etc.
En este caso el archivo .htaccess de /public_html contendrá un código afín al siguiente:
Es este ejemplo se ilustra una clásica tienda que no se aloja en la carpetita principal del Alojamiento sino en una subcarpeta y que además ha de realizar numerosas redirecciones trescientos uno para corregir urls viejas a urls nuevas.
Como la página web en este caso está en una subcarpeta, en este caso de ejemplo está en
/public_html/cilene2observarás que entre las líneas 1 y 8 se reconduce el dominio principal a la carpetita donde esta la tienda instalada y desde la línea once se aplican redirecciones trescientos uno para corregir problemas de enlaces no alcanzados detectados mediante
Google Search Console.
El archivo .htaccess de la carpeta donde está la instalación, para este ejemplo se encuentra localizado en
/public_html/cilene2/contendrá aquellos códigos que por defecto establece PrestaShop cuando se instala o se regenera dicho fichero, más añadidos que se hayan efectuado posteriormente para gestionar por servirnos de un ejemplo tiempos de expiración de caché de imágenes y otros, pero no aparecerá ninguna redirección trescientos uno ya que se declararon en el fichero .htaccess de la carpetita primordial del Alojamiento.
Es el caso más frecuente que pueden hallarte en PrestaShop cuando has alterado la página web de dominio, has movido la instalación de una subcarpeta a la carpetita principal y ya antes tenías una senda auxiliar en el dominio para acceder a la web, por ejemplo:
Y ahora ha pasado a llamarse:
Para estos casos es fundamental que primero examines en
Google Search Console, en el apartado
Errores de rastreosi existen fallos cuatrocientos cuatro derivados del cambio de urls.
Si aparece tal como te ilustro en la atrapa
¡perfecto!no hay nada de qué preocuparte. Si por contra tienes errores, tendrás que repasar y anotar todos los fallos para transformarlos en redirecciones en caso de tratarse de errores relacionados con urls no alcanzadas porque hubo cambios en las URIs.
Para estos casos es importante que empieces a trazar un plan de acción para reducir a la mayor brevedad el impacto negativo que estos errores pueden causar sobre tu posicionamiento en caso de ser un tanto dejado en estas cuestiones y dejarlo correr. Te aseguro que por sí solo no se va reparar por más que lo mires si no actúas.
Empieza despacio, prueba primero con la primera url errónea que Google canta, anótala, cópiala y trata de abrirla en otra pestaña de tu navegador, si devuelve un 404 ya sabes, no existe, la borraste o ahora lleva por nombre de otra manera.
Abre tu archivo .htaccess (ya antes haz un backup del mismo por seguridad) y en la primera línea haz un espacio ( analizar mi pagina web ) y escribe más o bien menos con esta sintaxis (amoldando la url vieja y nueva a tu caso) añade lo siguiente:
Redirect 301/antigua-pagina /nueva-pagina
Guarda los cambios en el archivo .htaccess y prueba de nuevo a cargar la “vieja” y errónea url afectada actualmente por un error 404
Si lo hiciste bien deberías estar aterrizando en la url nueva de forma transparente, lo que daría por solucionado el inconveniente.
Ufff que alivio verdad!
¿Que tienes 156 urls con fallos cuatrocientos cuatro?paciencia y buenos alimentos que diría mi abuela, y empieza a añadir con la citada sintaxis cada una de las urls “viejas” (erróneas) y ve reconduciéndolas a la url “nueva” para reducir fallos.
¿Que una url “vieja” ahora ya no lleva a contenidos por el hecho de que no los usas?tampoco pasa nada, hazme caso, es mejor llevar las urls huérfanas a la url principal de la Tienda, que no llevarlas a ninguna parte. Una solución puede ser para estos casos:
De forma que lo que ya no existe y no enlaza con nada cuando menos aterrice en la página primordial de tu Tienda, a menos que desees crear una
página CMSpara explicar que tal o como servicio, producto o lo que sea ya no existe o no se ofrece. Eso ya es cosa tuya.
Si en tu Tienda de PrestaShop trabajas con varios idiomas, debes prestar atención a cómo se indexan las urls que se generan para cada idioma, porque en caso contrario posiblemente Google y otros buscadores web te indexen exactamente los mismos contenidos para diferentes idiomas.
Esto es especialmente problemático si hablamos de
productosindexados, ya que por defecto se indexará exactamente el mismo producto para cada idioma diferente que tengas activo en la tienda.
La redirección que puedes aplicar para redireccionar al idioma deseado por defecto es:
De esta forma le señalas a PrestaShop, mediante esta redirección aplicada en .htaccess que redireccione todas y cada una de las páginas de idioma Español a las correspondientes pero en Catalán.
Si lo que quieres por ejemplo es eliminar el idioma Español y que se mantenga por defecto el Catalán, la forma conveniente sería suprimiendo el idioma que no deseas mostrar en tu .htaccess:
Si suprimes múltiples idiomas de la tienda Prestashop y pasas a tener un solo idioma, PrestaShop eliminará el idioma de la URL.
Luego tendrás que crear redirecciones de cada idioma eliminado al idioma por defecto, en este ejemplo: Español.
Obviamente previamente debe existir una redirección del dominio sin alias
wwwal dominio con alias
www.
Es posible que tu tienda lleve ya un tiempo en Internet, se haya indizado innumerables veces y Google y otros buscadores web ya tengan estas urls indizadas, algo que puedes revisar desde tu navegador rápidamente ejecutando la siguiente consulta en el buscador de Google:
Ejemplo:
Las urls afables asisten a los usuarios a interpretarlas mejor, a los bots tampoco les da igual interpretar una url no afable frente a otra que si lo sea. Si quieres que tus urls sean más inteligibles revisa que en
Preferencias,
SEO y URLsestén bien configuradas.
Marca los botones de radio
URLs amigablesy y el siguiente para redirigir automáticamente a la URL canónica. Guarda los cambios. Si el
mod_rewriteestá activo en tu servidor (en CITIFACE lo está) deberías poder ver las urls de tus páginas de la Tienda PrestaShop con un formato más amigable.
Ejemplo de url no amigable:
Ejemplo de url amigable:
¿Cómo redirigir una url no afable ya indizada a una más amigable desde .htaccess?, fácil, usando esta sintáis:
Nota Si tienes doscientos urls
no amigableslamento decirte que sí, que tendrás que hacerlo a mano, sin comodines, incorporando una redirección para cada url perjudicada.
De ahí la importancia que tiene el prestar atención a estas cuestiones de SEO on-page ya antes de poner la Tienda a cargo de los buscadores web.
Google, y otros motores de búsqueda, a medida que van indexando contenidos estas urls pasan a quedar fijadas en los registros de indexado del sitio web afectado de manera que con el paso del tiempo, si no se producen cambios en estas urls, los enlaces pasan a ser permanentes y no precisas seguir reflejando la redirección en .htaccess.
Por un lado es bueno, pasado un periodo de tiempo prudencial, que puede ser de 1 año por ejemplo, el comprobar en
Google Search Consoleque no hay errores 404 para urls redireccionadas en tu fichero .htaccess y anterior copia de respaldo de tal fichero
puedes eliminar estas redireccionespara sanear el convocado archivo.
Imagino un usuario que tiene 200 redirecciones de urls no afables a urls amigables, o de categorías viejas de productos a nuevas categorías, lo esencial que puede resultarle el adecentar (vaciar) de estas redirecciones el fichero .htaccess para sostenerlo más ligero y saneado.
Es esencial, tras suprimir redirecciones trescientos uno del fichero .htaccess comprobar durante un período de cuatro o bien 7 días después de aplicar el cambio, que en
Google Search Consoleno aparecen errores 404 que hagan referencia a estas redirecciones, puesto que si aparecen será señal de que no ha trascurrido el tiempo suficiente y que deberás añadirlas de nuevo y esperar un tiempo más larga para que queden establecidas como urls terminantes o permanentes.
Esta cuestión está más a cargo de los buscadores que indexan tus páginas que de ti, con lo que la verificación, la paciencia y el sentido común, son esenciales para evitar caer nuevamente en los errores 404.
De la correcta gestión de las redirecciones trescientos uno en el archivo .htaccess dependerá que tus visitas lleguen al link adecuado sin perderse por el camino, ayudándote a reducir los errores 404 para evitar penalizar tu posicionamiento.
En PrestaShop existe un módulo gratuito llamado
.htaccess Editorque te deja editar el archivo .htaccess en empleo en tu instalación de PrestaShop para poder añadir redirecciones trescientos uno, regenerarlo y tener un mantenimiento del mismo.
Haz clic en la imagen para ir a la descarga del módulo.
Este módulo tiene ciertas características avanzadas para la edición de archivos .htaccess que otros módulos no tienen.
Tiene incorporado un editor que da una vista de los números de línea e incluso la comprobación de sintaxis y el destacado de código.
El módulo también permite añadir directivas tanto en la parte superior como en la parte inferior del archivo .htaccess, de esa manera puedes conseguir que tus redirecciones funcionen perfectamente con tu tienda.
Importante Este módulo requiere la desactivación del
Purificador HTMLen PrestaShop.
¿Dónde desactivar el
Purificador HTMLen PrestaShop?
Una vez deshabilitado podrás hacer empleo del módulo
.htaccess Editor.
Si por servirnos de un ejemplo añades algunas redirecciones y guardas los cambios.
Una vez guardados los cambios, si editas desde tu panel de Alojamiento web (cPanel) o bien por FTP el archivo .htaccess verás al principio del fichero las redirecciones ya añadidas.
Estas redirecciones se ciñen entre las líneas:
Siendo el resultado en htaccess:
Cómo has podido observar, este método es más sencillo para manipular el fichero .htaccess sin salir del backoffice y sin perturbar otros códigos que contenga, los cuales no se verán afectados con lo que añadas desde el módulo siempre que tenga la sintaxis adecuada.
Repasemos este proceso en el siguiente vídeo:
A partir de ahora, cuando precises aplicar redirecciones 301 en PrestaShop, si le tienes un tanto de respeto al ‘Editor de Código’ o bien a manipular el fichero .htaccess desde tu cPanel o bien por FTP, acuérdate que el módulo
.htaccess Editorte va a facilitar mucho la tarea.
Al final las
redirecciones 301 en PrestaShopson como el GPS y su aviso preferido
…recalculando ruta, que dejan redireccionar a los usuarios a los lugares correctos para que no se pierdan y de paso estar informados de los radares que puedan hacernos caer en infracciones y penalizarlos
¡vamos, lo que hace Google si administramos mal las urls!jeje 😛