Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 根据用户的位置进行网站重定向_Php - Fatal编程技术网

Php 根据用户的位置进行网站重定向

Php 根据用户的位置进行网站重定向,php,Php,我的组织有两个网站。一个是英国,另一个是印度。我想根据用户的位置将其重定向到特定的网站,无论是英国还是印度。换句话说,英国用户访问英国网站,印度用户访问印度网站,URL保持不变 可能的解决方案是什么?有许多可能的解决方案,其中包括: 您可以使用(mod_geoip)和mod_rewrite。您可以“代理”请求,在内部重写请求,或者更改从中检索文件的目录 您可以创建包含在index.php(或者所有页面)中的代码片段,从不同目录加载文件。PHP还包括使用GeoIP数据的函数(通过) 您可以使用$\

我的组织有两个网站。一个是英国,另一个是印度。我想根据用户的位置将其重定向到特定的网站,无论是英国还是印度。换句话说,英国用户访问英国网站,印度用户访问印度网站,URL保持不变


可能的解决方案是什么?

有许多可能的解决方案,其中包括:

  • 您可以使用(
    mod_geoip
    )和
    mod_rewrite
    。您可以“代理”请求,在内部重写请求,或者更改从中检索文件的目录
  • 您可以创建包含在
    index.php
    (或者所有页面)中的代码片段,从不同目录加载文件。PHP还包括使用GeoIP数据的函数(通过)
  • 您可以使用
    $\u服务器['HTTP\u ACCEPT\u LANGUAGE']
    ,因为国家代码通常与语言结合在一起。我不推荐这种方法,因为它非常不可靠
  • 等等

  • 有许多可能的解决方案,其中一些包括:

  • 您可以使用(
    mod_geoip
    )和
    mod_rewrite
    。您可以“代理”请求,在内部重写请求,或者更改从中检索文件的目录
  • 您可以创建包含在
    index.php
    (或者所有页面)中的代码片段,从不同目录加载文件。PHP还包括使用GeoIP数据的函数(通过)
  • 您可以使用
    $\u服务器['HTTP\u ACCEPT\u LANGUAGE']
    ,因为国家代码通常与语言结合在一起。我不推荐这种方法,因为它非常不可靠
  • 等等

  • 您可以分析浏览器发送的HTTP头并相应地重定向,或者使用GeoIP,就像Francois已经提到的那样


    但就我个人而言,我一直建议让用户自己决定要去哪里。

    您可以分析浏览器发送的HTTP头并相应地重定向,或者使用GeoIP,就像Francois已经提到的那样


    但就我个人而言,我一直建议让用户自己决定他想去哪里。

    请选择一个更具描述性的标题,否则这个问题会被许多人忽略。现在在英国或印度的每个人都会得到一个空白页?在国际海事组织,自动国家重定向是一个PITA。谷歌做到了,我总是为无法访问Google.com而烦恼。请选择一个更具描述性的标题,否则这个问题会被很多人忽略。现在在英国或印度的每个人都会得到一个空白页?在国际海事组织,自动国家重定向是一个PITA。谷歌做到了,我总是对无法访问谷歌网站感到恼火。选项3不可行,我是一个生活在巴西的新西兰人,我不会说葡萄牙语,所以我使用的3个操作系统中有2个是英语而不是葡萄牙语,我妻子的电脑使用英语,但她是巴西人。我推荐GeoIP,甚至谷歌地理定位API。@Ryan-我完全同意这一点,这就是为什么我说它非常不可靠(也许我应该大胆一点)。我只是想说明,有很多方法可以实现结果,但所有这些方法可能都不是100%准确(我们都知道,基于IP的位置检测不是100%准确)。感谢您澄清为什么选项3不可行。这不是问题,我始终认为,当推理背后有一个真实的例子时,它会有所帮助,但当我们回答我们并不总是有一个选项3不可行时,我是生活在巴西的新西兰人,我不会说葡萄牙语,所以我使用的3个操作系统中有2个是英语而不是葡萄牙语,我妻子的电脑使用英语,但她是巴西人。我推荐GeoIP,甚至谷歌地理定位API。@Ryan-我完全同意这一点,这就是为什么我说它非常不可靠(也许我应该大胆一点)。我只是想说明,有很多方法可以实现结果,但所有这些方法可能都不是100%准确(我们都知道,基于IP的位置检测不是100%准确)。感谢您澄清为什么选项3不是一个可行的选项。这不是一个问题,我始终认为,当推理背后有一个真实的例子时,它会有所帮助,但当我们回答时,我们并不总是有一个