1. ¿Buscando un Banco para abrir tu primera cuenta de ahorros? Revisa nuestro comparativo de cuentas cero mantenimiento haciendo clic aquí.
    Ocultar anuncio

Mostrar la ciudad y país del visitante con geoip nginx

Publicado en 'Webmasters' por circuitox, 10 Oct 2016.





  1. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16




    Hola con todos, he creado un pequeño script, con php y geoip en un servidor web nginx, este script debería detectar la ciudad de procedencia y a la vez crear una pagina de bienvenida con el nombre de dicha ciudad.

    Podrías por favor entrar a esta dirección y decirme si te sale tu ciudad, muchas gracias.


    Detectar Ciudad

    Detectar País

    Si estas en Perú, puedes probar con un proxy deberia salir la ip y el nombre del país perteneciente de dicha ip.
    También puedes probar la dirección con con google PageSpeed Insights (Estados Unidos)
    Pingdom (Australia)


    Nota: En la ciudad si solo sale Bivenenido entonces no esta funcionando.
    En el país no deberia haber problema.
     


  2. sevencore

    sevencore Miembro maestro

    Registro:
    30 Mar 2015
    Mensajes:
    281
    Likes:
    19
    uhmm ps yo no veo nada e ntre a los 2 links y solo veoo dos ruedas girando y dice bienvenido...:(
     
  3. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16
    Gracias, en la url de detectar país, deberia salir el nombre del país, es decir Bienvenido Peru.

    Tu ip es ipv4 o ipv6 ?
    Es estatica o dinamica ?
    Usas algún proxy software instalado en tu pc ?
    Navegas via móvil or desktop ?

    Cuando entras a esta pagina
    http://whatismyipaddress.com/
    Te sale el nombre de tu país correctamente ?

    En la url de ciudad, estoy teniendo problemas existe casos donde detecta y hay veces donde no.
     
  4. sevencore

    sevencore Miembro maestro

    Registro:
    30 Mar 2015
    Mensajes:
    281
    Likes:
    19

    mi concexion es normal como la de todos ip publica statica, y eso de proxy o no tiene nada q ver..supuestamente tu algoritmo por la ip publica deberia ubicar mi ciudad :D ejje el otro link si esta bienn dice bienvenido Peru :D
     
    A circuitox le gustó este mensaje.
  5. delima45

    delima45 Miembro de bronce

    Registro:
    18 Nov 2012
    Mensajes:
    2,073
    Likes:
    756
    Sale Perú. No sale ciudad.
     
  6. RTR0N3

    RTR0N3 Suspendido

    Registro:
    20 Set 2016
    Mensajes:
    215
    Likes:
    38
    Lo que tratas de hacer se llama geolocalizacion y hay varias clases en PHP que te hacen ese trabajo, alguna vez lo usaba para mostrar publicidad segun la procedencia del usuario.

    Te dejaria un enlace a la clase php, pero no recuerdo el nombre y tampoco tengo los archivos conmigo, lo que si puedo decirte es que Adcash o tal vez Adjal me dio ese archivo.

    P.D. Llevas muchos a;os en esto y todabia no has aprendido, creo que va siendo hora que te dediques a otras cosas y dejes esto para los hombres de verdad. :biggrin:
     
  7. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16
    Hola, para aclarar.

    Primeramente el término Geo esta relacionado a la localización de una ip (internet procolo) geograficamente en la tierra.

    Si entenderias un poco de lo que estoy hablando entonces podrias dar una opinión con causa y experiencia, para que necesito una clase php si puedo detectar el request mediante el servidor web nginx, php es es un lenguage que depende de un servidor web para su ejecución, esto quiere decir que lo más optimo es detectar via servidor y no php, por temas de optimización y rapidez.

    Si se hablaria de la optimización más a fondo entonces lo recomendable seria detectar via layer 2 hardware firewall o layer 3 iptables en linux.

    Por otra parte, el problema está relacionado a la detección de la ciudad con el modulo geoip en nginx y no php, este problema es común, para su efectividad se necesita comprar la versión de pago de maxmind, la versión que tengo es la gratuita.

    Si quieres decir algo con fundamento primero ten experiencia en el servidor nginx, porque el titulo mismo dice. geoip nginx

    Por favor investiga y ten experiencia, antes de dar una opinión.
     
  8. RTR0N3

    RTR0N3 Suspendido

    Registro:
    20 Set 2016
    Mensajes:
    215
    Likes:
    38
    @circuitox , he manejado varios dedicados con miles de usuarios online corriendo nginx y estoy en el tema antes que tú o tal vez no (en los años 2008-2009 tú eras muy lammer) y lo que me queda claro es que sigues teniendo el mismo comportamientp y no me vas a sorprender con tecnicismos. Si sabes tanto de sistemas no estarias preguntando en un foro tan lammer como este. Otra cosa, no siempre lo más optimo es la mejor forma de hacer las cosas, incluso algo de redundancia es necesario.
    :paz:
     
  9. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16
    jjajajjjajja, entonces si dices que as trabajado con miles de usuarios online corriendo nginx, porque no lo demuestras en tus comentarios, eres una persona sin autoridad. Tus conocimentos son el reflejo de tu ignorancia.
     
  10. RTR0N3

    RTR0N3 Suspendido

    Registro:
    20 Set 2016
    Mensajes:
    215
    Likes:
    38
    Antes reconoce que eras muy lammer y sólo conocias dominios .tk y usabas hosts gratuitos. :D
     
  11. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16
    Estimado RTRON3, porque haces perder el tiempo a la gente, que importa el pasado. Eso está muerto, sea bueno o malo, más bien te sugiero que no creas en lo que he escrito e investiga y hazme saber que he cometido un error en mi sentencia de conocimiento, porque no nos esforzamos al limite y volver a empezar.
     
  12. Derzz

    Derzz Miembro frecuente

    Registro:
    29 Abr 2014
    Mensajes:
    86
    Likes:
    2
    Los mas acertado que vas a tener el Pais.
    La ciudad no creo, ni siquiera manejando Woocommerce con el GeoIp DB.
    La respuesta es simple, acá en el Perú las ips vienen desde nodos de distintas partes que pasan por filtros para llegar a su destino..

    A mi siendo del sur me sale que mi nodo es de SJM, no he probado desde movil
    Tampoco sale usando proxy. :(
     
  13. circuitox

    circuitox Miembro frecuente

    Registro:
    20 Abr 2008
    Mensajes:
    231
    Likes:
    16
    Hola con todos, solo para decirles que dominio que se está mencionado para hacer las pruebas no está disponible, por otra parte.

    Viendo el último comentario, Derzz parece que no leíste el post completo, ya había dicho que no es óptimo detectar la ip mediante una aplicación layer 7 como el plugin de wordpress, lo óptimo es hacerlo desde el layer que más tengas acceso, en este caso es el servidor web nginx.

    Acerca de cómo realmente funciona una ip (Internet Protocol)

    Un resumen.

    La esencia del internet consiste en el intercambio de mensajes electrónicos o paquetes de datos
    Esto involucra hardware para procesar los paquetes (como cobre, cables de fibra óptica, gateway nodes, inclusive señales satelitales) y un sistema formalizado para formatear los paquetes o mensajes, esto se denomina protocolos.

    El básico protocolo usado en internet es ip = Internet procol
    Una ip retrasmite datagrams(packet-switched network header y payload = lógico) a través de la red.

    La función de una ip es de transportar paquetes de datos de un determinado host hacia un destinado host
    Una ip, generalmente trabaja con el routing network unicast (comunicación entre un solo enviador y un solo recibidor o receptor)

    Internet Protocol está relacionado a (Los espacios representa una coma):

    Geoip Geodns voip Unicast Broadcast Multicast Anycast (este es usado por cloudflare, maxcdn, geodns, 13 root dns server en el mundo, etc.)
    TCP UDP DCCP SCTP RSVP
    BGP DHCP DNS FTP HTTP IMAP LDAP MGCP NNTP NTP POP ONC/RPC RTP RTSP RIP SIP SMTP SNMP SSH Telnet TLS/SSL XMPP
    IP IPv4 IPv6 ICMP ICMPv6 ECN ARP NDP OSPF Tunnels L2TP PPP MAC Ethernet DSL ISDN FDDI y un largo etc.

    ¿Quienes son los encargados de la IP, que organización?


    La primera fuente de las direcciónes de ip es: RIR = Regional Internet Registries
    La segunda fuente vendria hacer el encargado de tu continente, por ejemplo en américa latina es: LACNIC
    Esto quiere decir si eres de Peru y quieres un rango de ips tienes que contactarte con los de Lacnic.

    Nota: Si les interesa saber más sobre estos temas pueden escribir aquí para continuar el porque no es tan efectivo geoip en la detección de una ciudad.