Base de conocimientos
1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Utilizar la reescritura de URL
Esta guía explica el principio de la reescritura de URL (URL Rewriting) y muestra cómo utilizarlo en un Alojamiento Web de Infomaniak mediante un archivo .htaccess.
Introducción
- La reescritura de URL permite presentar direcciones más legibles y más explícitas, por ejemplo, reemplazando una URL como
index.php?id=123por/articulo/123/. - Las URL claras facilitan la navegación de los visitantes y pueden contribuir a mejorar el posicionamiento en los motores de búsqueda (
SEO) al destacar más el contenido de la página. - Esta técnica también permite ocultar ciertos detalles técnicos de la aplicación, como las extensiones de archivo o el uso de parámetros en la URL, sin modificar el funcionamiento del sitio.
Ejemplo de reescritura de URL
El siguiente ejemplo transforma una URL como article.php?id=25&cat=4 en una URL más legible, con el formato /article/25/4/.
Añada las siguientes reglas en el archivo .htaccess situado en la raíz de su sitio web:
# Desactivar la visualización del índice de directorios y permitir enlaces simbólicos pertenecientes al mismo usuario
Options -Indexes +SymLinksIfOwnerMatch
# Activar el motor de reescritura
RewriteEngine On
# Establecer la base de reescritura si su sitio está instalado en un subdirectorio
# RewriteBase /admin/
# Regla de reescritura
RewriteRule ^article/([0-9]+)/([0-9]+)/?$ article.php?id=$1&cat=$2 [L,QSA]Las opciones utilizadas en esta regla tienen el siguiente significado:
L(Last): indica que no se debe aplicar ninguna otra regla de reescritura si esta coincide.QSA(Query String Append): conserva los posibles parámetros adicionales que ya estén presentes en la URL.
Importante: la creación de estas reglas no modifica automáticamente los enlaces que ya existen en su sitio web. Debe actualizar sus enlaces internos para que utilicen el nuevo formato de URL.
Redirigir a un dominio principal
Si varios nombres de dominio permiten acceder al mismo sitio web, se recomienda redirigir todos los dominios secundarios a un dominio principal. Esta práctica evita la duplicación de contenidos (duplicate content) y permite a los motores de búsqueda indexar una única versión de su sitio web.
Ejemplo de redirección permanente a un dominio principal mediante HTTPS:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domaine-secondaire\.xyz$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.domaine-secondaire\.xyz$ [NC]
RewriteRule ^(.*)$ https://www.mon-domaine-principal.com/$1 [R=301,L]La opción R=301 indica que se trata de una redirección permanente. Los navegadores y los motores de búsqueda se informan así de que el contenido ahora está disponible en esta nueva dirección.
Enlace a esta FAQ: https://faq.infomaniak.com/206
¿Le ha sido útil esta FAQ?