2017-09-06 82 views
-1

我有两个商业网站,example.comexample.ca。我们希望是建立重定向:如果非加拿大游客去example.ca如果一个加拿大游客去example.com它们会指向example.com使用国家IP重定向URL

    1. ,它们会指向example.ca

  • +5

    请不要,这可能是现代互联网中最烦人的功能,你被重新定向到某个你不想去的地方...... – Teemu

    +0

    你应该给用户的弹出窗口.com或.ca –

    +0

    请花些时间阅读帮助页面,特别是名为“我可以询问什么主题?”(http://stackoverflow.com/help/on-topic)和[“我应该避免问什么类型的问题?“](http://stackoverflow.com/help/dont-ask)。更重要的是,请阅读[Stack Overflow问题清单](http://meta.stackexchange.com/q/156810/204922)。您可能还想了解[最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。 –

    回答

    2

    我建议你到服务器端geoIp解决方案,这取决于你使用的语言。但是,您可以使用JavaScript来重定向,这不是最好的解决方案。这里是可用于JavaScript的代码。

    function getCountryCode(callback){ 
    //i am assuming you are using jQuery for ajax 
    jQuery.getJSON("https://freegeoip.net/json/", function (data) { 
        callback(data.country_code); 
        }); 
    } 
    

    现在您可以重定向一个国家代码。例如

    getCountryCode(function(country){ 
         //for canada store 
          if (country=='CA'){ 
    
    
          } 
          else { 
            window.location.href =='' //US Store 
           } 
          }); 
    

    这只是一个想法,您可以使用,但是您需要考虑美国以外的人加拿大的默认商店。正如我之前告诉你的,切断侧重定向会更好。此外,您还需要在url中给出令牌,以停止重定向。例如,如果您在加拿大并需要查看商店,那么您可以使用停止重定向一段时间的cookie。我希望这会给你更多有关你的问题的信息。

    +0

    谢谢,它正在工作... – Ankit

    0

    您可以使用geoPlugin

    只需添加:

    <script language="JavaScript" src="http://www.geoplugin.net/javascript.gp" type="text/javascript"></script> 
    

    并且您可以使用geoplugin_countryCode()函数获取国家/地区代码。

    +0

    我已经把它放在标签中,但它不起作用 – Ankit

    +0

    看看包含的链接和我编辑的答案。 –