P2.6 Redirect
En esta práctica, aprenderemos a configurar redirecciones en Apache utilizando la directiva Redirect. Las redirecciones son útiles cuando necesitamos cambiar la ubicación de un recurso web o cuando queremos redirigir a los usuarios a una página diferente.
- Editar el fichero de configuración del host virtual:
sudo nano /etc/apache2/sites-available/sitio1.conf - Agregar la directiva Redirect. Dentro del bloque
<VirtualHost>, agrega la siguiente línea para redirigir todas las solicitudes ahttp://www.ejemplo.com:Redirect /buscador https://www.google.com - Guardar y salir del editor.
- Reiniciar Apache para aplicar los cambios:
sudo systemctl restart apache2 - Verificación. Ahora, si accedemos a
http://sitio1.local/buscadoren nuestro navegador, deberíamos ser redirigidos automáticamente ahttps://www.google.com.
Nota
La directiva Redirect puede tomar varios parámetros, como el código de estado HTTP (por ejemplo, 301 para redirecciones permanentes o 302 para redirecciones temporales). Por defecto, Apache utiliza una redirección 302.
Redirect 301 /antigua-pagina https://www.ejemplo.com/nueva-pagina
Redirección interna
También es posible redirigir a una ruta interna dentro del mismo servidor. Por ejemplo, para redirigir /inicio a /pagina-principal, podemos hacer lo siguiente:
- Agregar la directiva Redirect. Dentro del bloque
<VirtualHost>, agrega la siguiente línea:Redirect /inicio /pagina-principal - Guardar y salir del editor.
- Reiniciar Apache para aplicar los cambios:
sudo systemctl restart apache2 - Creamos los archivos y directorios necesarios para la verificación:
sudo mkdir -p /www/sitio1/pagina-principal sudo mkdir -p /www/sitio1/inicio cd /www/sitio1/pagina-principal sudo nano index.html cd /www/sitio1/inicio sudo nano index.html - Verificación. Ahora, si accedemos a
http://sitio1.local/inicio, deberíamos ser redirigidos automáticamente ahttp://sitio1.local/pagina-principal.
Redirect vs Alias
Es importante no confundir la directiva Redirect con la directiva Alias. Mientras que Redirect se utiliza para redirigir a los usuarios a una URL diferente, es decir, se realiza una nueva solicitud HTTP, la directiva Alias se utiliza para mapear una URL a un directorio en el sistema de archivos del servidor sin cambiar la URL en el navegador del usuario.