1

我正在尝试解决重写问题,但这是我的第一次,我想我做错了什么。

我们门户网站的一些用户,尝试导航键入https://www.dudalina.proveagora.com而不是正确的https://dudalina.proveagora.com。我们只有 *.proveagora.com 的 SSL,所以我开始尝试对输入错误 url 的用户进行重定向。在这里,重写的打印效果很好: 在此处输入图像描述

但是,有些用户键入 https://,有些用户键入 http://。通过这种方式,我试图改变模式。

在此处输入图像描述

我不知道为什么,但是使用第二种模式,网址https://www.dudalina.proveagora.com不再重定向。

再解释一下,dudalina 部分也是动态的。Dudalina 是商店名称,它会随着商店而改变。因此,我们可以使用http://bestbuy.proveagora.com或其他任何东西,这种模式适用于所有选项。

我知道,用户不能输入 www.bestbuy.proveagora.com 但他们可以输入,我们需要让它工作!:(

有什么帮助吗?

编辑

xml 网络配置

     <rewrite>
        <rules>
            <rule name="RemoveWWWPrefix" stopProcessing="true">
                <match url="(.*)" negate="false" />
                <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
                    <add input="{HTTP_HOST}" pattern="^(https\:\/\/|https\:\/\/)?([a-zA-Z]+\.)?(proveagora\.com){1}(\/.*)?$" ignoreCase="false" negate="true" />
                </conditions>
                <action type="Redirect" url="http://dudalina.proveagora.com" appendQueryString="false" />
            </rule>
        </rules>
    </rewrite>
4

1 回答 1

0

干得好:

<rule name="RemoveWWWPrefix" stopProcessing="true">
  <match url="(.*)" negate="false" />
  <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
    <add input="{HTTP_HOST}" pattern="^(.+\.)proveagora\.com$" />
    <add input="{HTTP_HOST}" pattern="^dudalina\.proveagora\.com$" negate="true" />
    <add input="{HTTPS}" pattern="^ON$" />
  </conditions>
  <action type="Redirect" url="https://dudalina.proveagora.com" appendQueryString="false" />
</rule>

它将检查所使用的协议是否存在,HTTPS并且 的子域proveagora.com是否存在且不同于dudalina.

如果是这种情况,它会重定向到https://dudalina.proveagora.com

于 2013-10-25T18:30:07.997 回答