Apache - Añadir cabecera en funcion de la IP origen

 
Vista:

Añadir cabecera en funcion de la IP origen

Publicado por teletaba (1 intervención) el 14/12/2006 17:45:07
Hola a todos!

Tengo el siguiente problema: necesito añadir una cabecera en la peticion recibida al Apache si solo si esa peticion viene de una determinada IP. Si no viene de esa IP, no se añade nada.

Sabe alguien como hacerlo?

Se me habia ocurrido hacerlo via las RewriteCond, pero estan limitadas a ser condicionales solo para RewriteRules y por tanto usar RequestHeader no funcionaria.

Ej:
RewriteCond %{REMOTE_ADDR} XXX\.YYY\.ZZZ\.VVV
RequestHeader set param_cabecera valor

No funciona.........

Si alguien me pudiera ayudar le estaria muy agradecido......

Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Añadir cabecera en funcion de la IP origen

Publicado por Cesar (1 intervención) el 28/12/2006 22:57:55
Hola mira yo estoy haciendo algo parecido solo que yo tengo dos arreglos, lo que hago es lo siguiente:

creo un archivo .shtml y en el pongo este codigo: Lo que hace es capturar la ip del cliente con el metodo REMOTE_ADDR y la compara con los arreglos, si existe en alguno de ellos lo manda a la pagina que le corresponde, si no existe lo manda a una pagina de acceso no valido.

OJO: el archivo que yo utilizo es un shtml y lo corro en apache para esto debes de tener cargado el modulo include de apache y modificar el archivo httpd.conf para que aceptes paginas shtml.

si quieres mas informacion mandame un correo..

Suerte.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>*-*-*-* Intranet *-*-*-*</title>

<script>
var ip = '<!--#echo var="REMOTE_ADDR"-->'

function determina()
{

<!--Arreglo de las Direcciones IP Pagina1 -->
ipsPagina1 = new Array(3)
ipsPagina1[0] = "10.1.1."
ipsPagina1[1] = "10.1.2."
ipsPagina1[2] = "10.1.3."
<!--FIN Arreglo de las Direcciones IP de Pagina1-->
<!------------------------------------------------ -->

<!--Arreglo de las Direcciones IP de Pagina2 -->
ipsPagina2 = new Array(3)
ipsPagina2[0] = "10.1.4"
ipsPagina2[1] = "10.1.5."
ipsPagina2[1] = "10.1.6."
<!--FIN Arreglo de las Direcciones IP de Pagina2-->


var existePagina1 = false;
var existePagina2 = false;
a = ip.substring(0,ip.lastIndexOf('.')+1);
for(var i = 0; i< ipsPagina1.length; i++){
if(a == ipsPagina1[i]){
existePagina1= true;
break;
}
}
if(existePagina1){
//envia a Pagina1
window.location="html/pagina1html"

}else{
for(var i = 0; i<ipsPagina2.length; i++){
if(a ==ipsPagina2[i]){
existePagina2= true;
break;
}
}
}
if(existePagina2){
//envia a Pagina2
window.location="html/pagina2.html"
}else{
// Acceso No Valido
window.location="html/accesoDenegado.html"
}
}
</script>
</head>
<body onLoad="determina()">
</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar