Necesito recuperar la IP de un usuario. Mi servidor local está devolviendo ::1
como IP. Tengo curiosidad, si esto es un comportamiento esperado? Estoy ejecutando MAMP en Snow Leopard.¿Debería un MAMP devolver :: 1 como IP en localhost?
Respuesta
La misma pregunta, y encontró una solución válida, probada, funciona bien. Quería tener ip addy - de 127.0.0.1 también en lugar de tener que aceptar the :: 1 y debatir sobre los problemas de IPv4/6. Por lo tanto, controlada por unos momentos y cayó sobre un comentario 2008 hecha por @Brad - aquí: http://board.issociate.de/thread/489575/SERVERquotREMOTEADDRquot-returning-1.html
Resumir - (Mac OS - León de la Montaña, en particular)
sudo vi /etc/apache2/httpd.conf
Encuentra donde Apache es el 'listen'-ción a las ips/puertos, etc ... que normalmente será una línea con este aspecto
Listen 80
Hacer que se vea así:
Listen 127.0.0.1:80
volver a guardarlo. Reinicie Apache. Voila!
Ahora $_SERVER[REMOTE_ADDR]
se verá así 127.0.0.1
.
Espero que ayude a alguien.
"Escucha 127.0.0.1:80" quieres decir :) –
Buena captura, corregida, gracias @Ivo :). –
De esta forma está deshabilitando la compatibilidad con IPv6 para Apache. Puedes arreglarlo de otra manera: agrega '' 127.0.0.1 localhost'' al archivo hosts, por lo que la resolución IPv4 se prioriza sobre IPv6 para localhost;) –
::1
es el equivalente en IPv6 de la dirección IPv4 127.0.0.1
.
Puede convertir la dirección IPv6 a la dirección IPv4 utilizando la función inet_ntop()
como Adam, dijo.
Creo que puede Convierte entre IPv4 e IPv6 usando 'inet_ntop' –
@adam, sí, tienes razón. @Mild: si está satisfecho con mi respuesta, acepte;] –
$ ip = inet_ntop ($ _ SERVER ['REMOTE_ADDR']); está regresando Advertencia: inet_ntop() [function.inet-ntop]: Valor in_addr no válido en /Applications/MAMP/htdocs/createstudios/wp-content/themes/createstudios/page.php en la línea 18 –
tendrá que desactivar el soporte IPv6 en su sistema operativo para Apache para detener la presentación de estas direcciones IPv6 formato, cuando se desea el formato IPv4. Inhabilité la compatibilidad con IPv6 y está funcionando como se espera ahora.
Hace poco me encontré con este problema, aunque nunca recuerdo haber habilitado la compatibilidad con ipv6 en mi sistema Windows 7, podría hacerlo Microsoft en una de sus actualizaciones (tal vez).
Creo que IPv6 se ha habilitado por defecto desde Windows XP SP2 o incluso antes. –
para que no haya reslove este problema que parece que el archivo hosts
no se encuentra o la línea
127.0.0.1 localhost
en etc\hosts
LINUX
en /private/etc/hosts
dispositivos MAC
en \%WINDIR%\system32\drivers\etc\hosts
Windows XP/Vista/7/8/
cuando se elimina el archivo hosts
o missed
o la línea demasiado la IPV6
se establecerá por default
...
la modificación del /etc/apache2/httpd.conf
o incluso /private/etc/hosts
no es la solución.Devuelve :: 1 porque es el equivalente de IPv6 a IPv4 anterior (pero oro) 127.0.0.1
. Como se define en el /privates/etc/hosts
, cada vez que accede al http://localhost
asume IPv6 :: 1. Entonces es el comportamiento esperado.
Una solución alternativa sería acceder directamente al http://127.0.0.1
. Funcionará bien. Pero recuerde que la disponibilidad de IPv6 está aumentando. Puede asegurarse de que su servidor (después de la implementación) solo responda a IPv4, pero a mediano plazo, si su sitio/aplicación web no maneja tanto IPv4 como IPv6 correctamente, existe una gran posibilidad de que algo salga mal dentro de 1/2 año. O antes, nunca lo sabremos.
- 1. Python - Obtener localhost IP
- 2. ¿Por qué recibo :: 1 como dirección IP en ASP.Net .. y cómo obtener la dirección IP correcta?
- 3. localhost vs dirección IP real
- 4. ¿Cómo debería devolver * esto con un shared_ptr?
- 5. Usar Python en MAMP
- 6. página web pantalla diferente con localhost y dirección IP
- 7. ¿Debería un método de conexión devolver un valor?
- 8. ¿Puede un mapa Java devolver un tamaño de -1?
- 9. Detener MAMP MySQL
- 10. ¿Debería un método de interfaz devolver un objeto personalizado?
- 11. ¿Cómo debería uno derribar un impulso :: asio :: ip :: udp :: socket?
- 12. ¿Límite de 1 voto por dirección IP?
- 13. corriendo php en mamp
- 14. Introducción a backbonejs: qué debería devolver un servidor
- 15. ¿Qué es la dirección IP ':: 1'?
- 16. IsAssignableFrom() devuelve falso cuando debería devolver verdadero
- 17. Creando un método de recuperación genérico para devolver 1 registro
- 18. ¿Qué UIImage debería devolver de UIActivity activityImage?
- 19. ¿Por qué debería una API devolver 'nulo'?
- 20. división MATLAB ... ¿debería 29/128 devolver 0?
- 21. ¿Debería este resultado Json devolver un 404 o 200?
- 22. ¿Qué debería devolver un constructor de JavaScript si falla?
- 23. ¿Hay algo como MAMP para Ruby on Rails?
- 24. tcpdump: localhost a localhost
- 25. ¿Debería declararse un registrador Log4J como transitorio?
- 26. sql. Devolver filas como columnas
- 27. ¿Debería un controlador MVC y una vista tener una relación de 1 a 1?
- 28. Cómo devolver un puntero como un parámetro de la función
- 29. MySQL Error "Operand debería contener 1 columna"
- 30. prueba sitios web locales con mamp en iphone?
posible duplicado de [PHP $ _SERVER \ ['REMOTE_HOST' \] returns :: 1] (http://stackoverflow.com/questions/2482033/php-serverremote-host-returns-1) –