Apache - Alias: redirecciones URLs
mod_Alias; es un modulo que viene activado por defecto en el servidor Apache, esta creado para asociar una parte del sistema a otra parte totalmente distinta del sistema o para redireccionar URLs.
En resumen Alias es una directiva que permite asociar una ruta (carpeta) a otra (carpeta) del sistema de archivos
Sintaxis :
Alias /nombre "ruta o path"
====================================================
Ejemplo: Alias /diego /home/diego/public_html
/localhost/home/diego/public_html es igual a /localhost/diego
====================================================
Crear Alias
Vamos a crear un Alias de la carpeta /diego que hace referencia a la carpeta /home/diego/public_html
1- En webmin nos dirigimos al Menú Servidores > Servidor Web Apache
2- Nos dirigimos a la pestaña Global configuration > Servidor Virtual
3- Hacemos clic en el icono Configure Apache Modules
4- Buscamos el modulo alias, por defecto dicho modulo viene instalado y activado, en caso de no estar activado lo seleccionamos marcando con el símbolo y mas abajo pulsamos en Enable Selected Modules
5- Ahora pulsamos en Existing virtual hosts
6- y nos a nuestro Servidor Virtual
7- Hacemos clic en el icono Alias y Redireccionamientos
8- Primero escribimos el alias del directorio. empezando y terminado en barra invertida /,
Segundo escribimos la ruta real del directorio
Tercero pulsamos en Salvar.
10- Ahora vamos a probar que la configuración ha sido la correcta. Para ello nos dirigimos a un navegador web e introducimos el alias creados. En este manual observamos como ha funcionado perfectamente.
=========================================================================
Configurar Alias desde consola modo texto
Vamos a realizar el mismo proceso pero en modo texto. Vamos a crear el alias:
Alias /diego /home/diego/public_html
1- lanzamos una consola virtual, por ejemplo konsole
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2kPR8ZHWJOXtje1nH2qK5ihNJGEpjDxIPzoxlpW7NfTeOb8k_WASSVaET5PRZR9n-JaP78KS89jd1c0zUqIyxDgisWADVzOOm3E17mg3tLg2fxMv7_WmdNhaVhEhHxPHVdgFzHneczeg/s640/konsole-1.png)
2- nos logeamos como usuario administrador (root) usando el comando su
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdxEHRH2c53p1gHgz17mQAc37CfonEUfkmhRYRSllZPa-c9XcuYJzr2VlYXzwK5AcJZ_qdpVJDMrcC5MIgwyooXFzEKx9HBD87XFwY3K_Tj6VL9kKdmlY6qoDDvJVjvThVGGvoeyc-_hc/s640/konsole-2.png)
3- nos dirigimos a la siguiente ruta: /etc/apache2/sites-available
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj73oGxHn-ZhGeqddbm9y8PsRjHKO-DszSaaNnojxfngAtDcHXq5RuV2xbvL0kPgI2O50_TCa2lL10fHoJ5-B5JexqyVaAkbb3Lii-bxZ3iIntL8tl8-Zm1FbBo7XO-fiKFX-nT8i_jwr4/s640/konsole-3.png)
4- editamos el fichero default, con el siguiente comando: nano default
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlUhSGlJZ4a7znVDIus2Prd_jyxIEuObWI0Jl1EXKoXXjvg9r3m4sNQI8CNktMEfzZI7emJ2FMqwasKlXRa3Jx4yNfnv_JLRQW2MfUu2YXZLJBJRmXz2nl5rHzsUfDhPsy9wVF94Lcw2Q/s640/konsole-4.png)
5- nos vamos al final del fichero antes de la ultima línea que dice
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOhMIcwDVkslQ64M1_t1i2UJX2uOOs0yPBOspmBtumGMFgPsbt8hzc-3NnL82BWJUOvZQsEjbAS6SlflD8jPPLWV2bopRl7gDhVBvj8gBo9DbdwX2CT4wz1-RXmOI9In0-K4ivA5khPi4/s640/konsole-5.png)
6- pulsamos la combinación de teclas: Control (Ctrl) + O y pulsamos intro y acto seguido pulsamos la combinación de teclas: Control (Ctrl) + X y pulsamos intro
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9fiwQ_FvfKhyphenhyphen2hKm9qrum-_FVH57Nrf_FPUB-WVgxjWDSmP9WCXseU_OQOBCmy3CQ5Xkx5yIfooeUWzfXdsoQlfZ764seqLUvo4QL-mYuw11sRDyh-3dRXq9mvmaPqZP1VUOzp2X2Nfo/s640/konsole-6.png)
7- ahora tenemos que reiniciar el servidor web apache con el siguiente comando: /etc/init.d/apache2 restart
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_0IUNf88UXXpyqGBCRRpwZTaOOdI_JVtS7PNCfgOBKTZ7MMZzGdAn3ns16O6aBZECGElgWS7MvoELwI76pl4ZMxF5JpTHOjcIVvz2BhMThV094OhIqjFFyEDvNC4ifVBJfK1P3p3N45s/s640/konsole-7.png)
si todo a ido bien al reiniciar el servidor nos muestra la palabra OK.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHApw9_TCjSQEfxYtQw-ZOy7fro_5r4Zd6qjyGyw7b-zUIXXL_VtuuUoXhlhyphenhyphenXhPya6QQkadVyfaeZwd85pH4DQ9rxT1SSgbUbq2OVhJuuWkw5H4mdYhyphenhyphenxVkeqxesyWA-Jo4apN_5vejg/s640/konsole-8.png)
.
7 comentarios:
Hola,
en el ejemplo grafico, ¿¿tambien puedo acceder a la carpeta mediante la ruta localhost/home/diego/public_html(en lugar de localhost/diego) o esa ruta queda "invalida"(y solo puedo acceder mediante el alias creado)??
Gracias, saludos:D
Hola Fede.
El alias no es mas que un sobrenombre o nombre mas corto y/o mas fácil de recordar. El Alias NO invalida o NO anula la dirección real.
En el ejemplo, podemos acceder a la misma carpeta usando cualquiera de los das direcciones:
- /localhost/home/diego/public_html
- /localhost/diego
Es decir el alias no es mas que una opción mas para llegar a la misma url.
Saludos
Esque estoy trabajando con la directiva ScriptAlias en Apache y cuando accedo al script mediante el alias todo correcto pero si utilizo el "realname" me da un error 500
Gracias por tu respuesta usuariodebian:D, saludos
Hola Fede.
Crear los alias tiene dos motivos reales de usos:
1- porque quieres recordar una url difícil de recordar por una mas fácil de recordar
2- porque has habilitado el modulo "userdir" en apache, con lo cual cada usuario del sistema tendra asignada su propia carpeta public_html donde alojar sus páginas web.
En el caso del punto 2. para acceder con el nombre real, Si ahora introducimos la dirección localhost/~diego (observemos la virgulilla, es necesaria añadirla para que funcione perfecta), vemos que el servidor funciona y responde perfectamente.
Tu error esta en que quieres acceder a la dirección public_html del usuario por ejemplo diego con la siguiente url:
/localhost/home/diego/public_html
Cuando lo correcto es acceder con la siguiente url:
/localhost/~diego
Saludos
Hola usuariodebian,
supongo que el modulo userdir solo tiene sentido en linux, y NO en windows(donde estoy trabajando), asi que no lo tengo cargado en mi apache
veras tengo el sgte alias creado en mi apache:
ScriptAlias /cgi-bin/ "C:/Archivos de programa/Apache Group/Apache2/cgi-bin/"
accedo a los scripts mdte la ruta:
http://localhost:8080/cgi-bin/test.cgi
pero tambien quisiera(y me parece logico como dijiste en tu post) acceder con esta otra(aunque no me funciona):
http://localhost:8080/C:/Archivos%20de%20programa/Apache%20Group/Apache2/cgi-bin/test.cgi
Hola fede.
Te respondo a tu ultima duda:
Tu dices:
supongo que el modulo userdir solo tiene sentido en linux, y NO en windows(donde estoy trabajando), asi que no lo tengo cargado en mi apache
Yo respondo:
Apache2 en windows también soporta el modulo/directiva "userdir". Para ver como instalarlo y configurarlo es tan fácil como ir a google y buscar un poquito. Pues yo no doy soporte para windows solo para Debian y derivados.
Tu dice:
veras tengo el sgte alias creado en mi apache:
ScriptAlias /cgi-bin/ "C:/Archivos de programa/Apache Group/Apache2/cgi-bin/"
accedo a los scripts mdte la ruta:
http://localhost:8080/cgi-bin/test.cgi
pero tambien quisiera(y me parece logico como dijiste en tu post) acceder con esta otra(aunque no me funciona):
http://localhost:8080/C:/Archivos%20de%20programa/Apache%20Group/Apache2/cgi-bin/test.cgi
Yo respondo:
Te aconsejo que leas un manual de apache2, para que aprendas como se instala los modulos/directivas apache2, como se crean los Alias, como se sirven las páginas web, y por tanto como ser crea las url en tu servidor. Y muchas cosas mas que te interesaran muchísimo. te animo que te bajes el manual de apache2 o que lo leas en línea directamente de la web oficial: Manual de Apache2
Saludos
mi duda no se refiere a los modulos, ni a como cargarlos, sino a porke no me admite esa segunda forma de acceso si las dos son equivalentes.
De todas formas gracias por tus respuestas y por los enlaces que me indikas, los leere........gracias usuariodebian, saludos:D
Publicar un comentario