使用 IIS URL 重写将 IP 重定向到 CNAME

发布于 2025-01-01 14:02:38 字数 742 浏览 0 评论 0原文

我有一个网站在 IP 地址 1.2.3.4 上运行,主机名为 www.host.com。 Web 服务器上仅运行一个网站,可以通过 http://1.2.3.4http://www.host.com、< em>http://www.cname.com。我更喜欢用户通过 CNAME www.cname.com 访问它(映射到 www.host.com),因此我想重定向来自 的流量http://1.2.3.4http://www.host.comhttp://www.cname.com。是否可以通过 IIS URL Rewrite 来实现?

我尝试了以下规则,但不断收到重定向循环错误。

<rule name="RedirectToMitigatr" stopProcessing="true">
  <match url="^((?!www.cname.com).)*$" />
  <action type="Redirect" url="https://www.cname.com/{R:1}" />
</rule>

认为规则应该做的是匹配任何不包含www.cname.comhttps://www.cname.com。但显然不是 :p

谢谢!

I have a website running on IP address 1.2.3.4 with hostname www.host.com. The web server only have one website running on it, and it can be accessed by http://1.2.3.4, http://www.host.com, http://www.cname.com. I prefer users to access it by a CNAME www.cname.com (which maps to www.host.com), so I want to redirect traffic coming from http://1.2.3.4 or http://www.host.com to http://www.cname.com. Is it possible to achieve it with IIS URL Rewrite?

I tried the following rule but keeps getting redirect loop error.

<rule name="RedirectToMitigatr" stopProcessing="true">
  <match url="^((?!www.cname.com).)*$" />
  <action type="Redirect" url="https://www.cname.com/{R:1}" />
</rule>

What I think the rule should do is that it matches anything doesn't contain www.cname.com to https://www.cname.com. But apparently it's not :p

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

幻梦 2025-01-08 14:02:38

您实际上无法将流量从一个 IP 地址重定向到另一个 IP 地址。
我做出以下假设:
1. 您希望您的网站位于 www.cname.com
2. host.com 应重定向到 www.cname.com

您收到错误,因为您实际上是将流量从 www.cname.com 重定向到 www.cname.com 。您需要将 url 匹配设置为 www.host.com

为此,首先您需要将 www.cname.com 指向与您的网站 host.com 相同的目录

假设您已正确映射名称服务器,请创建一个新的虚拟主机cname.com 并将其指向您想要网站的同一目录

访问 http://support.microsoft.com/kb/816576 了解更多信息

<rule name="RedirectToMitigatr" stopProcessing="true">

<match url="^((?!www.host.com).)*$" />
<action type="Redirect" url="https://www.cname.com/{R:1}" />
</rule>

You cannot actually redirect traffic from an IP address to another.
I'm making the following assumptions:
1. you want your website on www.cname.com
2. host.com should redirect to www.cname.com

You are receiving an error since you are essentially redirecting traffic from www.cname.com to www.cname.com . You need to set url match to www.host.com

To do this,first you need to point www.cname.com to the same directory as your website host.com

Assuming you have mapped the name servers correctly, create a new virtual host for cname.com and point it to the SAME directory where you want your website

Visit http://support.microsoft.com/kb/816576 for more information

<rule name="RedirectToMitigatr" stopProcessing="true">

<match url="^((?!www.host.com).)*$" />
<action type="Redirect" url="https://www.cname.com/{R:1}" />
</rule>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文