首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将规则https://www重写为https:// IIS7

将规则https://www重写为https:// IIS7
EN

Stack Overflow用户
提问于 2011-06-20 01:31:29
回答 3查看 3.3K关注 0票数 1

我已经在提供的共享主机上收到了ssl证书,并成功安装了它。证书是为mysite.com准备的,而不是为*.mysite.com准备的。我希望该网站是可访问的,像mysite.com -没有www,没有http (只有安全连接)。我在这里发现了类似的问题,但不是正确的问题。我使用的是IIS7,.net环境。在我的web.config中添加了以下规则:

代码语言:javascript
复制
<rule name="Remove WWW prefix">
<match url="(.*)" ignoreCase="true" />
<conditions>
    <add input="{HTTP_HOST}" pattern="^www\.mysite\.com" />
</conditions>
<action type="Redirect" url="https://mysite.com/{R:1}" redirectType="Permanent" />
</rule>

<rule name="Redirect to HTTPS">
<match url="(.*)" />
<conditions>
    <add input="{SERVER_PORT}" pattern="443" negate="true" />
</conditions>
<action type="Redirect" url="https:// mysite.com/{R:1}" />

一切正常,但是url https://www.mysite.com没有被重定向到https://mysite.com。我得到的错误是证书是给mysite.com的(原意是:),消息来自火狐),并建议添加异常。

我的问题是,这个url的合适规则是什么?

提前感谢您的宝贵时间。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-20 02:59:23

不幸的是,我不认为你能做到这一点。您需要https://www.mysite.com上的有效SSL证书才能重定向到https://mysite.com,而不会警告用户证书无效。在URL重写有机会对SSL连接执行操作之前,IIS将尝试协商SSL连接。

您可以使用DNS条目来执行此操作。您可以添加一个CNAME条目,如下所示:

代码语言:javascript
复制
www.mysite.com.   CNAME   mysite.com.
票数 0
EN

Stack Overflow用户

发布于 2011-06-21 03:27:10

编辑:对不起,我想我读错了你的帖子!我已经给了你一个自动从http转到https的规则。我把它留在这里,以防它帮助其他人(像我一样)也不识字,你可以调整它,使其适合您的情况。

请阅读这篇由Omar Al Zabir撰写的文章:http://omaralzabir.com/redirecting-traffic-from-http-to-https-with-zero-coding-in-iis/

然后看看我(Tom Chantler)对他帖子的评论。

票数 1
EN

Stack Overflow用户

发布于 2012-12-07 04:33:52

这两条规则对我很管用。

代码语言:javascript
复制
    <rule name="Remove WWW" stopProcessing="true">
    <match url="^(.*)$" />
    <conditions>
        <add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
    </conditions>
    <action type="Redirect" url="http://mysite.com{PATH_INFO}" redirectType="Permanent" />
</rule>
<rule name="Redirect to HTTPS" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
        <add input="{HTTPS}" pattern="^OFF$" />
    </conditions>
    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>

其他阅读:

http://www.jppinto.com/2010/03/automatically-redirect-http-requests-to-https-on-iis7-using-url-rewrite-2-0/

http://keyvan.io/remove-www-prefix-from-urls-with-url-rewrite-module-for-iis-7-0

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6403988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档