我需要重定向用户从印度到使用javascript的另一个页面

I need to redirect user from India to another page using javascript

本文关键字:javascript 另一个 重定向 用户      更新时间:2023-09-26

你好,我可以有人帮助我这个代码重定向用户浏览我的网站从印度到不同的页面。

var country = "India";/*Here I need to check the visitor country name please can anyone show me what to do*/
if (country == India){document.location='blocked-access.php'}

虽然这不是问题的确切答案,但您应该在PHP文件中执行检查。客户端很容易绕过重定向到"内容被阻止"页面的JavaScript检查。服务器端更改不能被篡改以强制显示被阻止的内容(除了代理/vpn)。

如果客户端检查是正确的(重定向不是为了安全,而是为了用户方便),您可以使用这个

 $.get("http://ipinfo.io", function (response) {
   console.log(JSON.stringify(response, null, 4)); //Here is user's country
}, "jsonp");

以下是纯javascript(使用JSONP)的解决方案:

1)。在需要国家名的地方在脚本中声明这个函数->

   function jsonpCallback(data){ 
    alert(data.address.country); 
   }

2)。在HTML文件中调用这个脚本->

<script src="http://api.wipmania.com/jsonp?callback=jsonpCallback" type="text/javascript"></script>

上面的脚本从服务器获取数据并将其作为data对象移动到回调函数中,该对象包含有关用户位置的信息。

注意:为了更好,您需要使用服务器端脚本来查找用户的位置,您需要做一件额外的事情。详情见下文

首先,您需要检查访问您的站点的用户的ip地址

如果你用的是C#那么这里是怎么做的

  string VisitorsIPAddr = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    if (VisitorsIPAddr != null || VisitorsIPAddr != String.Empty)
    {
        VisitorsIPAddr = Request.ServerVariables["REMOTE_ADDR"];
    }
    var request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("PathToTheWebResorceForExample_geobytes.com");

第二件事,你需要检查用户ip地址的位置

你的请求应该是这样的

http://getcitydetails.geobytes.com/GetCityDetails?fqcn=Visitors_IP_ADDRESS

您可以从以下网站获取:http://www.geobytes.com/iplocator/

请求将返回json,其中包括city, country和相关信息。

如果你正在使用c#,那么你需要使用JsonConvert类来解析并获得位置。

如果用户来自印度,那就把他重定向到你喜欢的页面。