Я использую xampp на localhost, и когда я использую $_SERVER["REMOTE_ADDR"]
, он возвращает ::1
(также делает это в phpinfo()
). Почему он это делает? Я хочу, чтобы он возвращал обычный ip-адрес, например 127.0.0.1. Моя операционная система - Windows Vista.remote_addr не возвращает адрес IPv4
ответ
::1
является IPv6 address и аббревиатурой от 0:0:0:0:0:0:0:1
, то есть loopback address, к местной машине. Таким образом, ::1
совпадает с 127.0.0.1
только через IPv6 вместо IPv4.
Ваш apache прослушивает IPv6 соединений по умолчанию (::1
is local loopback). Если вы действительно просто хотите IPv4, попробуйте отключить отключить подключение IPv6 в конфигурации Apache:
Если вы хотите Apache обрабатывает соединения IPv4 только, независимо от того, что ваша платформа и апрелю будет поддерживать, указать адрес IPv4 на всех Слушайте директивы, как в следующих примерах:
Listen 0.0.0.0:80
Listen 192.170.2.1:80
Вы должны отключить поддержку IPv6 в своей ОС для apache, чтобы прекратить показывать эти адреса формата IPv6, если вам нужен формат IPv4. Я отключил поддержку IPv6 и теперь работает как ожидалось.
Следующие инструкции отключить IPv6 может быть полезным, http://support.microsoft.com/kb/929852
Только так вы знаете, я следовал шаги, описанные в приведенной выше ссылке, и я использую Windows 7 не Vista, хотя я сомневаюсь, что может быть любой или много различия.
Недавно я столкнулся с этой проблемой, хотя я никогда не помню, чтобы включить поддержку ipv6 в моей системе, может быть сделано Microsoft в одном из своих обновлений (возможно).
Перейти на панель управления XAMPP. Откройте Apache (httpd.conf), который можно найти в первой строке, то есть в действиях модуля Apache. Послушайте (вы можете Ctrl + F это), который показывает 80 (если у вас есть ipv6 active), измените его на Listen 0.0.0.0:80
, и все готово. Перезапустите Apache и вы перестанете видеть ::1
в вашем браузере. Это с радостью вернет ваш localhost, то есть 127.0.0.1
- 1. $ _SERVER ['REMOTE_ADDR'] не возвращает IP-адрес
- 2. $ _SERVER ['REMOTE_ADDR'] не возвращает IP-адрес
- 3. $ _SERVER ['remote_addr'] возвращает частный IP-адрес
- 4. IPv4-адрес с PHP
- 5. Pinging win2k16 возвращает IPv6-адрес вместо IPv4
- 6. $ _SERVER ['REMOTE_ADDR'] возвращает 127.0.0.1
- 7. REMOTE_ADDR и IPv6 в PHP
- 8. $ _SERVER ['REMOTE_ADDR'] не дает правильный IP-адрес
- 9. IPv4-адрес автоматически изменяется
- 10. Когда закончится IPv4-адрес?
- 11. Получить IPv4-адрес клиента
- 12. VB.Net Return IPv4 Адрес
- 13. Почему $ _SERVER ['REMOTE_ADDR'] возвращает 127.0.0.1
- 14. REMOTE_ADDR показывает неправильный IP-адрес на nginx
- 15. Как показать IPv4 только с REMOTE_ADDR в PHP?
- 16. Почему request.env ['REMOTE_ADDR'] возвращает два IP-адреса?
- 17. Возможно ли каким-либо образом преобразовать адрес IPV6 в адрес IPV4 или восстановить адрес IPV4 всегда?
- 18. Как получить IPv4-адрес клиента?
- 19. Inet6Address.getByName() возвращает (существующий) IPv6, но только адрес IPv4?
- 20. Почему UnicastIPAddressInformation.IPv4Mask возвращает значение null на адрес IPv4?
- 21. Как определить адрес клиента ipv4 и ipv6?
- 22. Tarantool 1.6 не прослушивает адрес ipv4
- 23. Как отобразить IPv4-адрес Не IPv6
- 24. Получить Точный Внешний адрес IPv4 PHP
- 25. Как преобразовать адрес IPV6 в адрес IPV4?
- 26. IPv4 удаленный адрес в WCF
- 27. сравнить IPv4 адрес в C#
- 28. Получить IPV4 Адрес по умолчанию
- 29. Получить/Установить андроид адрес IPv4
- 30. Как получить адрес IPv4 сервера Oracle DB