2010-09-28 15 views

Respuesta

26

REMOTE_HOST pertenece al nombre de host del cliente (es decir, la computadora que realiza la solicitud). REMOTE_ADDR se refiere a la dirección IP del cliente.

Habría momentos en que el nombre de host es irresoluble por lo que el REMOTE_HOST devolverá el REMOTE_ADDR o la dirección IP en lugar.

+0

quiero mencionar que es posible ver resultados inesperados si hay servidor proxy en el medio. – dotfreelancer

+17

Esta respuesta es incorrecta o, en el mejor de los casos, engañosa. REMOTE_HOST es el nombre de host del * cliente *, es decir, la computadora que realiza la solicitud, no el servidor. REMOTE_ADDR es la dirección IP del cliente. (fuentes: http://php.net/manual/en/reserved.variables.server.php, http://msdn.microsoft.com/en-us/library/ms524602(v=vs.90).aspx) – mhenry1384

+2

@Ruel ¿Podría corregir su respuesta? Está describiendo 'SERVER_ADDR' y' HTTP_HOST' por lo que puedo decir. – Sumurai8

2

1. $_SERVER['REMOTE_ADDR'] - Contiene la dirección IP real del cliente. Ese es el valor más confiable que puede encontrar del usuario.

2. $_SERVER['REMOTE_HOST'] - Esto obtendrá el nombre de host desde el que el usuario está viendo la página actual. Pero para que este script funcione, se deben configurar las búsquedas de nombres de host dentro de httpd.conf.