Я использую xampp на localhost и когда я использую $_SERVER["REMOTE_ADDR"]
это возвращается ::1
(также выполняет в этом phpinfo()
). Почему это делает это? Я хочу, чтобы это возвратило нормальный IP-адрес как 127.0.0.1. Моя операционная система является Windows Vista.
::1
- это IPv6-адрес и аббревиатура для 0:0:0:0:0:0:0:0:1
, который является адресом loopback для локальной машины. Таким образом, ::1
- это то же самое, что 127.0.0.1
, только через IPv6 вместо IPv4.
Ваш apache по умолчанию прослушивает IPv6 соединения (::1
является локальным loopback). Если вам действительно нужен только IPv4, попробуйте отключить соединения IPv6 в конфигурации apache:
Если вы хотите, чтобы Apache обрабатывал только IPv4 соединения, независимо от того, что поддерживает ваша платформа и APR, укажите IPv4 адрес во всех директивах Listen, как в следующих примерах:
Listen 0.0.0.0:80
Listen 192.170.2.1:80