Por simple curiosidad me dio ganas de averiguar porque cuando uno entra en la intranet de la PUCP te redirige automaticamente a otro servidor que a veces es eros otras veces es poseidon otras ares o artemisa entonces lo primero que se me ocurre es un tipo de response.redirect o server.transfer que es en ASP.Net pero hecho en el lenguaje de programación que corre el servidor de la intranet que creo que es JSP, sera una redirección que se da en el servidor. seria algo lógico creo yo.
Pero al ingresar a la página intranet.pucp.edu.pe me redirige de inmediato a otra dirección entonces para ver el contenido de la página intranet.pucp.edu.pe use un gestor de descargas para poder descargar la página sin que me redireccione a otra
Y la respuesta a mi pregunta es que sucede o siguente:
- al ingresar a la página esta tiene en la etiqueta body el evento "onload" que llama a "javascript:carga()"
- carga() es una función que se encargara de realizar el trabajo de redirección
- En la función carga() existen dos variables una llamada serverName en donde se almacenara el nuevo dominio al que seremos redireccionados y la otra n que es un numero random
- Este n se genera a partir de la función Math.random() de javascript que devuelve un valor entre 0 y 1 con decimales
- cuando ya se tiene n generado la lógica de la funcion es la siguiente: se le da un valor a la variable serverName dependiendo de n
si n es menor a 0.25 le da el valor eros.pucp.edu.pe
si n es mayor o igual a 0.25 y menor a 0.5 se le da el valor poseidon.pucp.edu.pe
si n es mayor o igual a 0.5 y es menor a 0.75 se le da el valor ares.pucp.edu.pe
la ultima opción es solo si n es mayor o igual a 0.75 se le da el valor artemisa.pucp.edu.pe
- por ultimo te cambia el document.location.href para que seas enviado a otra página que sera el valor que tienela variable serverName
El código es el siguiente
function carga()
{
var serverName = "";
var n = Math.random();
if (n < 0.25) {
serverName = "http://eros.pucp.edu.pe";
} else if (n >= 0.25 && n < 0.50) {
serverName = "http://poseidon.pucp.edu.pe";
} else if (n >= 0.50 && n < 0.75) {
serverName = "http://ares.pucp.edu.pe";
} else {
serverName = "http://artemisa.pucp.edu.pe";
}
document.location.href=serverName+location.pathname+location.search;
}
Aunque pienso que ejecutar el código en el lado del cliente se hace más lenta la redirección que si se hiciera en el lado del servidor, además para que se declara la variable serverName en vez de eso podria redirigirse ni bien sea verdadera una condición en el if. No soy experto en el tema para aprovechar los recursos de la mejor manera pero eso es lo que pienso.
Todo el proceso de redirección sucede tan rápido que nadie le toma importancia yo solo queria saber que sucede y ahora que lo se lo comarto con ustedes.






