gpt4 book ai didi

c# - 重定向问题

转载 作者:行者123 更新时间:2023-11-30 16:30:58 24 4
gpt4 key购买 nike

假设我有一个网站 www.mysite.com,我希望它是一个多语言网站。以下是我想要实现的目标:-

1. 当用户访问我的网站时,我想获取用户所在国家/地区的 ISO 代码。假设 ISO 是“FR”。 现在我希望用户被重定向到 www.mysite.fr

如果无法获取 ISO 地址,用户将被重定向到 www.mysite.com

现在我已经使用了来自这个站点的 dll http://ipaddressextensions.codeplex.com/并使用了他们的方法,就像 异 3066 码()。但是我无法根据用户的 IP 地址获取 ISO 代码。无论如何,获取 ISO 代码的最佳方法是什么?

2. 我有针对不同国家/地区的不同母版页。就像法国有 France.master,德国有 Germany.master 等。 我想要的是首先应该获取用户的 ISO 代码,然后将用户重定向到与 ISO 对应的站点 并希望加载相应的主控。

这是一个场景:-

来自法国的用户通过键入“www.mysite.com”打开我的网站。现在我想用法语向用户展示我网站的内容,所以我希望他被重定向到“www.mysite.fr”并希望 France.master 加载所有页面。我正在做的是检查用户输入的“顶级域名”,在这种情况下是“com”,然后我获取 ISO 代码 然后如果 ISO 存在,用户将被重定向到“www.mysite.fr”

如果无法获取 ISO,“www.mysite.com”将只为用户打开。

3. 如何重定向用户? Response.Redirect("http://www.mysite.fr") 失败并给出如下错误:-

“页面未正确重定向”我尝试将其更改为 Response.Redirect("http://www.mysite.fr", false) 和 Response.Redirect("http://www.mysite.fr", true)。这没有用。

4. www.mysite.com 和 www.mysite.fr 不是两个不同的网站,只是当 www.mysite.com 时,网站上会显示英文内容。 当它是“www.mysite.fr”时,可以在网站内部看到法语内容。

我所做的是:-

在 Global.asax 文件中:-

我尝试使用上面的 dll 从站点 ipaddressextensions 获取 ISO 代码。然后我在 Global.asax 文件中创建了这个 Application("UserISO") 变量。((这是一个好方法吗?))我需要这样做,因为我想在我的全局文件本身中使用这个全局变量……在一些用户定义的方法中。 然后我在 cookie 中设置母版页名称,并使用此 cookie 为 Page_PreInit() 事件中的每个内容页动态更改母版页。最后,我使用“Response.Redirect("http://www.mysite.fr", false)”重定向用户。这个 response.redirect 不起作用!

现在,我走在正确的道路上吗?我对如何真正让它发挥作用感到非常困惑! :(多语言网站如何重定向他们的用户?我在哪里可以了解这一切?我试了又试又试了,但这就是行不通!

最后,目前还没有真正为网站设置任何域名。使用 IIS 中设置的 IP 地址运行它。那么我该如何测试我的网站。我该怎么做呢?我完全遵循正确的方法吗??

请指引我走向正确的道路。任何帮助将不胜感激。谢谢!

最佳答案

比利时有3种官方语言,光看ip地址和域名是找不到我的语言的。

查找访问者语言的最佳方法是检查其浏览器的语言。您可以在 Request.Userlanguages 中找到它。

关于c# - 重定向问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185672/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com