En este artículo vamos a explicar cómo crear URL amigables con PHP y .htaccess para mejorar el SEO de nuestras webs. Las URL amigables utilizan palabras clave descriptivas en lugar de parámetros o identificadores numéricos.
Estas URL son más fáciles de entender para los usuarios y para los motores de búsqueda, lo que puede mejorar la experiencia del usuario y el posicionamiento en los resultados de búsqueda. Una URL con parámetros sería:
https://midominio.com/seccion.php?categoria=muebles&objeto=madera
La misma URL amigable sería:
https://midominio.com/seccion/muebles/madera
Como podemos observar, es más que evidente que la URL amigable mejorará todas las experiencias del usuario y el SEO en buscadores.
Url amigables con .htaccess
La implementación de URL amigables es muy utilizada en servidores con tecnología LAMP (Linux, Apache, MySQL, PHP) y se realiza utilizando la técnica de «rewriting» o reescritura de URLs mediante el archivo .htaccess.
Esto implica redirigir las URL amigables a una estructura interna que el servidor y la aplicación puedan entender. Los pasos para implementar URL amigables en un proyecto con PHP y .htaccess generalmente son los siguientes:
- Configuración del servidor web: Asegúrate de que tu servidor web esté configurado para permitir la reescritura de URLs. Esto se puede hacer utilizando el módulo mod_rewrite en Apache.
- Definición de reglas de reescritura: En el archivo .htaccess, puedes definir las reglas de reescritura para redirigir las URL amigables a un script PHP que maneje las solicitudes. Este es un ejemplo de cómo se vería un archivo .htaccess básico:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
En este ejemplo, todas las solicitudes que no sean para archivos o directorios existentes del servidor se redirigen a index.php, pasando la URL como un parámetro llamado url.
Url amigables con PHP
Una vez tenemos acceso a nuestro archivo .htaccess y establecemos las directivas de reescritura de URL amigables en él, debemos adaptar nuestras páginas PHP para que reciban los parámetros y muestren la página correctamente.
Procesamiento en el script PHP: En el archivo index.php o en un archivo específico para el enrutamiento, puedes procesar la URL amigable y determinar qué acción o página mostrar en función de esa URL. Aquí tienes un ejemplo básico:
https://mi_dominio.com/productos/
<?php
// Obtener la URL de la solicitud
$url = $_GET['url'];
// Realizar el enrutamiento
switch ($url) {
case 'productos':
// Lógica para mostrar la página de productos
break;
case 'blog':
// Lógica para mostrar la página de blog
break;
default:
// Lógica para manejar una URL inválida o página no encontrada
break;
}
En este ejemplo, se utiliza un switch para determinar qué página o acción mostrar en función de la URL amigable recibida.
En este ejemplo sobre URL amigables con PHP y .htaccess sólo utilizamos un parámetro pero en tus proyectos debes ajustarlo a tus necesidades.
Resumen de Url amigables
Es importante tener en cuenta que la implementación de URL amigables puede variar según la estructura de tu proyecto, framework o librerías que estés utilizando. Algunos frameworks, como Laravel o Symfony, tienen funcionalidades incorporadas para facilitar la implementación de URL amigables.
Recuerda que al implementar URL amigables, es importante mantener la coherencia y la consistencia en la estructura de las URL. Utiliza palabras clave descriptivas, separadores claros y evita el uso excesivo de parámetros o identificadores numéricos en tus URLs.
Implementar URL amigables puede ser beneficioso para la usabilidad y el SEO de tu proyecto PHP. Entre otras motivos, porque ayuda a los usuarios y motores de búsqueda a comprender mejor la estructura y el contenido de tu sitio web. Si estás interesado en este tema puedes leer el artículo donde explico el archivo .htaccess o mi Libro Guía básica .htaccess.
¡ Espero que este artículo sea de vuestro interés !