chengxiao
V2EX  ›  问与答

根据用户所在ip不同自动切换城市这个应该如何实现啊?求可行方法

  •  
  •   chengxiao · May 19, 2012 · 6946 views
    This topic created in 5282 days ago, the information mentioned may be changed or developed.
    根据用户所在ip不同自动切换城市这个应该如何实现啊?求可行方法,目前是用js调用新浪的ip库但是缺点是js跳转会有一个过程,怎样才能实现像58同城,赶集网那样的效果呢?求科普
    14 replies  •  1970-01-01 08:00:00 +08:00
    Showfom
    Showfom
    PRO
    May 19, 2012
    1
    http://fw.qq.com/ipaddress

    用腾讯的IP库吧,比较准确
    x86
    x86
    May 19, 2012
    2
    @Showfom 要么准确,要么偏差太大,偶尔几次显示登入地址差了几个省份,还有一次直接显示中国
    wingoo
    wingoo
    May 19, 2012
    3
    用纯真的ip库吧
    在github上搞了个练手项目https://github.com/wingoo/CZIP-Filter
    里面的ips2.txt是已转换好的ip城市对应库
    导入数据库就行了

    或者下载纯真的,然后运行下程序
    Wy4q3489O1z996QO
    Wy4q3489O1z996QO
    May 19, 2012
    4
    @Showfom
    @x86
    奇怪你们那qq的ipaddress还能访问?
    我这里:
    The page you are looking for is temporarily unavailable.
    Please try again later.
    qiuai
    qiuai
    May 19, 2012
    5
    @romotc 一样不能访问
    likuku
    likuku
    May 19, 2012
    6
    qqwry 以前用这个,其实也是纯真

    PECL :: Package :: qqwry : http://pecl.php.net/package/qqwry

    IP::QQWry - search.cpan.org : http://search.cpan.org/~sunnavy/IP-QQWry-0.0.16/lib/IP/QQWry.pm
    ichigo
    ichigo
    May 19, 2012
    7
    用纯真吧,挺准的,更新也比较及时。
    Janpo
    Janpo
    May 19, 2012
    8
    GEOIP
    chengxiao
    chengxiao
    OP
    May 19, 2012
    9
    @Showfom
    @Janpo
    @ichigo
    @likuku
    @qiuai
    @romotc
    @likuku
    @qiuai
    @romotc
    @x86
    @wingoo
    各位亲们......我已经有ip库了 现在求的是怎么像58那样 以访问直接就是城市站点,而非js跳一次....
    cutehalo
    cutehalo
    May 19, 2012❤️1
    10
    @chengxiao 存cookie吧
    wingoo
    wingoo
    May 19, 2012❤️1
    11
    @chengxiao 可以肯定的是,如果二级域名不同肯定要跳一次,如果二级域名相同,动态读取
    ElmerZhang
    ElmerZhang
    May 19, 2012❤️1
    12
    @chengxiao 思路:
    页面一开始先查cookie,看有没有location,如果有,直接跳转。
    如果没有,查IP库判断用户所在地,然后跳转。

    跳转方式:如果用户访问的不是他所在地的页面,直接302跳转,PHP实现方式:
    header('Location: xxx.xxx.xxx ');
    9hills
    9hills
    May 19, 2012❤️1
    13
    @chengxiao 你服务端是PHP的话,判断IP什么的在PHP里做不就不用跳了。。。为啥非要放在js里
    CoX
    CoX
    May 19, 2012❤️1
    14
    @romotc 不能访问,难不成都没人维护
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4912 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 08:00 · PVG 16:00 · LAX 00:00 · JFK 03:00
    ♥ Do have faith in what you're doing.