Mat*_*ino 5 domain-name-system iis-7 reverse-proxy
我将如何配置 IIS 7.0 的 ARR 和 URL 重写以基于主机进行反向代理。
例如:
http://website1.mydomain.com gets routed internally to internalserver\website1
http://website2.mydomain.com gets routed internally to internalserver2\website2
http://website3.mydomain.com gets routed internally to internalserver2 (default website)
Run Code Online (Sandbox Code Playgroud)
仅供参考 - 公共 DNS 网站 1.mydomain.com 和其他网站实际上都指向 mydomain.com 的公共 IP。
请注意,这不是所有相同的服务器。防火墙内部有多个 Web 服务器和一个普通的默认 Web 服务器,其端口 80 和 443 对外公开。我有一个 IP 地址和一个域名。因此,由于我的防火墙中有多个 Web 服务器,因此我需要将主机名子域路由到内部的不同 Web 服务器。
任何详细的步骤都会有很大帮助。
由于您依赖于域名而不是 IP(在这种情况下更容易),因此这是最直接的方法:
确保您的面向外部的服务器具有基于主机标头(website1.mydomain.com 等)的 3 个站点的绑定。您可以将 IP 地址保留为(全部未分配)。你可能已经这样做了。-- 基本上我的意思是将绑定添加到第一个站点“website1.mydomain.com”,并以类似的方式添加到其他两个站点。这是有关 bindings的演练。
在 ARR 服务器上的 ARR 中创建 2 个 Web Farm。一个到 internalserver,另一个到 internalserver2。使用这些服务器的主 IP。如果您想对每个网站进行独特的健康检查,您可以设置 3 个不同的 Web Farm。它们中的两个指向同一台服务器是可以的。-- 步骤:创建一个名为InternalServer 的新Server Farm 并向其添加一个服务器,即“internalserver”。然后创建另一个名为 InternalServer2 的服务器场,并在其中添加“internalserver2”。
URL 重写示例:
<rule name="site1" patternSyntax="ECMAScript" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^website1\.mydomain\.com$" />
</conditions>
<action type="Rewrite" url="http://InternalServer1/{R:0}" />
</rule>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9796 次 |
最近记录: |