Categories


Tags


IIS和Apache实现HTTP重定向到HTTPS

本文介绍IIS7和Apache上实现访问HTTP跳转到HTTPS访问的方法,网站设计出于安全的考虑需要使用https协议,但不少用户因为输入网址的习惯不喜欢带上https协议,导致访问异常,因此需要一种重定向功能,实现HTTP网站重定向到HTTPS网站的方法,具体操作如下。

IIS7

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

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

配置后,根目录下的web.config文件的内容如下:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name="redirect to HTTPS" enabled="true" stopProcessing="true">

<match url="(.*)" />

<conditions>

<add input="{HTTPS}" pattern="^OFF$" />

</conditions>

<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" />

</rule>

</rules>

</rewrite>

</system.webServer>

</configuration>

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]

来源:月光博客


Public @ 2012-12-08 15:56:01

【院长帮帮忙】流量断崖式下跌,如何自查恢复?(第七期)

院长近期收到一个VIP站点反馈,站点下的所有收录都没有了,站点流量断崖式下跌,先来看看这扎心的图:PC端流量变化:移动流量变化:院长解答:出现这种情况,首先要站长观察流量下滑期间站点是否有异常,并自查以下步骤:1. 网站自查发现自己出现过服务器异常,服务器错误导致页面失效,需尽快恢复站点服务器;这里推荐使用站长平台“抓取异常工具”&“抓取诊断工具”,可整体统计站点近期抓取问题,模拟蜘蛛抓取

Public @ 2014-02-02 15:22:05

百度Spider工程师给HTTPS站点的技术建议

5月25日,百度站长平台发出《百度开放收录HTTPS站点公告》,表示“全面支持HTTPS页面直接收录;另外从相关性的角度,百度搜索引擎认为权值相同的站点,采用HTTPS协议的页面更加安全,排名上会优先对待。”包括今天在与工程师的沟通会上,我们得知链接提交工具的Sitemap工具已也支持站长提交HTTPS数据。那么针对HTTPS,大家肯定还有一些疑问,于是我们专门请教了处理HTTPS数据的工程师:1

Public @ 2016-11-06 15:35:52

https证书,ev,dv,ov怎么选择?免费的可以吗

在选择证书的时候,不需要考虑证书签发服务商,或者说价格的问题,因为在SEO上是没任何区别的,一般的企业用免费的证书就可以了。那么什么时候用付费证书呢?如果你有非常多的子域名,这个时候很明显需要用付费证书了,因为1个免费证书,只支持一个域名来使用(WWW或者M ,等等,一个)。

Public @ 2011-08-09 15:56:06

HTTPS究竟是啥?这篇文章带你快速了解HTTPS

HTTPS(全称为Hypertext Transfer Protocol over Secure Socket Layer),是一种安全的互联网协议,它是使用SSL(Secure Socket Layer)层实现HTTP协议,可以保证传输的过程中数据安全。它常用于在网络上传输敏感信息,例如用户密码、银行账号等,保护用户信息不被窃取或篡改。 HTTPS就是传输安全协议,它采用“SSL/TLS”

Public @ 2023-02-24 05:12:39

更多您感兴趣的搜索

0.413356s