URL 重写无效证书
URL Rewrite invalid certificate
因此,我们在 IIS 10.0 上 运行 并且在我们的 ISP 注册了多个域,这些域都指向我们网络服务器的 public IP。 Web 服务器只有一个分配给通配符子域的证书。所以#.rootdomain.nl
我已经设置了一个 URL 重写以将所有不同的域重写到我们的根域:https://www.rootdomain.nl 但是我遇到的问题是第一个重定向正常但第二个没有'得到重定向而不是浏览器说没有这个域的有效证书。
URL 配置:
<rule name="Redirects to www.domain.com" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^(www.)?rootdomain.(com|be|de)$" />
</conditions>
<action type="Redirect" url="https://www.rootdomain.nl/{R:0}" redirectType="Permanent" />
</rule>
我努力实现的目标:
.com 到 .nl
www.rootdomain.com -->> redirect -->> www.rootdomain.nl
rootdomain.com -->> 重定向 -->> www.rootdomain.nl
.de 转 .nl
www.rootdomain.de-->> 重定向-->> www.rootdomain.nl
rootdomain.de-->> 重定向-->> www.rootdomain.nl
.be 到 .nl
www.rootdomain.be-->> 重定向-->> www.rootdomain.nl
rootdomain.be-->> 重定向-->> www.rootdomain.nl
当然,所有 http 流量都必须重定向到 HTTPS,所以这是第二条规则:
<rule name="Redirect to HTTPS" enabled="false" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{HTTPS}" pattern="OFF" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" />
这就是我的经历:
www.rootdomain.com -->> 证书无效(点击继续) -->> 重定向 -->> https://www.rootdomain.nl
rootdomain.com -->> 证书无效(点击继续) -->> 重定向 -->> https://www.rootdomain.nl
我们必须确保 HTTPS 站点绑定配置了有效的证书。服务器拥有的每个域名都与证书的主题相对应,否则在我们访问浏览器时,浏览器会提示证书无效的错误。
为了给每个域名绑定多个证书到同一个端口,我们需要勾选下面的选项。
结果。
最后,我们可以根据需要应用URL规则。
<system.webServer>
<rewrite>
<rules>
<rule name="MyRule" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{http_host}" pattern="www.bing2.com" />
</conditions>
<action type="Redirect" url="https://www.bing.com" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
如果有什么我可以帮忙的,请随时告诉我。
因此,我们在 IIS 10.0 上 运行 并且在我们的 ISP 注册了多个域,这些域都指向我们网络服务器的 public IP。 Web 服务器只有一个分配给通配符子域的证书。所以#.rootdomain.nl
我已经设置了一个 URL 重写以将所有不同的域重写到我们的根域:https://www.rootdomain.nl 但是我遇到的问题是第一个重定向正常但第二个没有'得到重定向而不是浏览器说没有这个域的有效证书。
URL 配置:
<rule name="Redirects to www.domain.com" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAny">
<add input="{HTTP_HOST}" pattern="^(www.)?rootdomain.(com|be|de)$" />
</conditions>
<action type="Redirect" url="https://www.rootdomain.nl/{R:0}" redirectType="Permanent" />
</rule>
我努力实现的目标: .com 到 .nl www.rootdomain.com -->> redirect -->> www.rootdomain.nl rootdomain.com -->> 重定向 -->> www.rootdomain.nl
.de 转 .nl www.rootdomain.de-->> 重定向-->> www.rootdomain.nl rootdomain.de-->> 重定向-->> www.rootdomain.nl
.be 到 .nl www.rootdomain.be-->> 重定向-->> www.rootdomain.nl rootdomain.be-->> 重定向-->> www.rootdomain.nl
当然,所有 http 流量都必须重定向到 HTTPS,所以这是第二条规则:
<rule name="Redirect to HTTPS" enabled="false" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAny" trackAllCaptures="false">
<add input="{HTTPS}" pattern="OFF" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false" />
这就是我的经历:
www.rootdomain.com -->> 证书无效(点击继续) -->> 重定向 -->> https://www.rootdomain.nl rootdomain.com -->> 证书无效(点击继续) -->> 重定向 -->> https://www.rootdomain.nl
我们必须确保 HTTPS 站点绑定配置了有效的证书。服务器拥有的每个域名都与证书的主题相对应,否则在我们访问浏览器时,浏览器会提示证书无效的错误。
为了给每个域名绑定多个证书到同一个端口,我们需要勾选下面的选项。
结果。
最后,我们可以根据需要应用URL规则。
<system.webServer>
<rewrite>
<rules>
<rule name="MyRule" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="false" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{http_host}" pattern="www.bing2.com" />
</conditions>
<action type="Redirect" url="https://www.bing.com" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
如果有什么我可以帮忙的,请随时告诉我。