Pergunta

Qual é a diferença entre essas duas variáveis?

REMOTE_HOST e REMOTE_ADDR.

Foi útil?

Solução

Remote_host pertence ao nome de anfitrião do cliente (ou seja, o computador que faz a solicitação). Remote_addr refere -se ao endereço de IP do cliente.

Haveria momentos em que o nome do host não é resolvido, para que o remote_host retorne o REMOTE_ADDR ou o endereço IP.

Outras dicas

1. $_SERVER['REMOTE_ADDR'] - Isso contém o endereço IP real do cliente. Esse é o valor mais confiável que você pode encontrar do usuário.

2. $_SERVER['REMOTE_HOST'] - Isso buscará o nome do host do qual o usuário está visualizando a página atual. Mas para que este script funcione, as pesquisas do nome do host dentro do httpd.conf devem ser configuradas.

Remoto: é um computador que reside em algum local distante, do qual os dados recuperados, normalmente se referem a um servidor em uma rede privada ou na Internet pública.

Remote_ Host retornará o RECOTE_ ADDR ou o endereço IP.

A partir de RFC-3875

  • Remote_addr: A variável remote_addr deve ser definida para o endereço de rede do cliente enviando a solicitação para o servidor.
      REMOTE_ADDR  = hostnumber
      hostnumber   = ipv4-address | ipv6-address
      ipv4-address = 1*3digit "." 1*3digit "." 1*3digit "." 1*3digit
      ipv6-address = hexpart [ ":" ipv4-address ]
      hexpart      = hexseq | ( [ hexseq ] "::" [ hexseq ] )
      hexseq       = 1*4hex *( ":" 1*4hex )
  • HOSPEDEIRO REMOTO: A variável remote_host contém o nome de domínio totalmente qualificado do cliente que envia a solicitação ao servidor, se disponível, caso contrário, nulo. Os nomes de domínio totalmente qualificados assumem o formulário conforme descrito na Seção 3.5 da RFC 1034 [17] e a Seção 2.1 da RFC 1123 [12]. Os nomes de domínio não são sensíveis ao caso.
The REMOTE_HOST variable contains the fully qualified domain name of
   the client sending the request to the server, if available, otherwise
   NULL.  Fully qualified domain names take the form as described in
   section 3.5 of RFC 1034 [17] and section 2.1 of RFC 1123 [12].
   Domain names are not case sensitive.

      REMOTE_HOST   = "" | hostname | hostnumber
      hostname      = *( domainlabel "." ) toplabel [ "." ]
      domainlabel   = alphanum [ *alphahypdigit alphanum ]
      toplabel      = alpha [ *alphahypdigit alphanum ]
      alphahypdigit = alphanum | "-"
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top