Apache+IIS怎样设置HTTP 301重定向到HTTPS?

虽然现在使用Linux做服务器的人很多,但是还是有很多Windows服务器,艾薇资讯已经在godaddy买了SSL,把网站设置成全站HTTPS,现在来教一下大家本IIS7和Apache上实现访问HTTP跳转到HTTPS访问的方法,有很多网站设计出于安全的考虑需要使用https协议,但很大多用户因为输入网址的习惯不喜欢带上https协议,导致访问异常,所以需要一种重定向功能,实现HTTP网站301重定向到HTTPS网站的方法,具体操作如下。

IIS7

首先要从微软的官方网站下载HTTP重写模块,安装完毕之后重启IIS服务,之后打开IIS控制台,发现多了一个组件,双击“URL重写”,在右边窗体中选择“添加规则”,并添加一个空白规则,给规则自定义一个名字(名称自便),比如我这里叫“redirect to HTTPS”,模式为:(.*),添加一个条件,条件输入为 {HTTPS},与模式匹配,模式为 ^OFF$,然后配置操作,操作类型为:重定向,重定向到URL为:https://{HTTP_HOST}/{R:1},重定向类型:永久301。

设置完毕后点击右侧的“应用”,这个 URL 重写就配置完毕了。

Apache

然后修改.htaccess文件,在文件里增加如下几行:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

另一种写法是:

RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]

Windows  [‘windəuz]  详细X
基本翻译
n. 微软公司生产的“视窗”操作系统
网络释义
Windows: 窗口操作系统
Windows Live: Windows Live
Windows Forms: Windows Forms

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注