IIS配置Url重写实现http自动跳转https的重定向方法(100%解决)
引言
这种文章网上可以说一搜一大把,但是我为什么还要写呢,因为一搜一把没把我气死,都是东抄西挪的东西,搞得整个文档质量太差。基本上看了几篇,连蒙带猜才配置好。
当然我在2019都要来了的时间写这个文章,有点像49年入国军的感觉。但是改写的内容还是得写,谁叫IIS还是很好用的。
我们先说需求场景
使用场景:首先你的有需求,比如我们的52ABP启用了SSL全站加密,那么默认浏览器进入的地址是:http://www.52abp.com ,我需要将http://www.52abp.com自动跳转到https://www.52abp.com 的入口中去,不然还是会有没加密的路径可以进行访问。
有了需求我们再来说下需要准备的工具和环境:
- URL ReWrite工具,下载地址:https://www.iis.net/downloads/microsoft/url-rewrite
but,2.1的版本是有bug,我之前被他们坑出翔了。所以有些时候你可能需要2.0的版本。
2.0从哪里可以下载呢。从Web Platform Installer里面进行安装吧。
操作流程
配置URL分为全局和非全局,下图,可以看到URL重写组件内容。
选择某一个站点中的URL重写,我们称之为单独的非全局。
直接选择IIS的可以配置全局,所以这里要依靠你自己的判断和选择。
打开Url重写工具
在右侧点击添加
,然后选择空白规则
,然后进行规则的配置。
规则命令如下
这个也是网上一大堆教程最神的地方,很多东西都是缺失的,后者不把代码帖出来的。。
名称:Redirect To HTTPS
(这个名字你可以自己改)
模式: (.*)
然后点击忽略大小写
条件中的逻辑分组处理
首先参考上图中的逻辑分组信息。
| 输入 |类型 |模式 |是否忽略大小写| 备注 |
| :--- | :--: | :-----: | :--: | :--: |
|{HTTPS}|与模式匹配|^OFF$|YES|此项用来匹配你的请求是HTTPS还是HTTP|
|{HTTPS_HOST}|与模式不匹配|^(localhost)|YES|如果你是本地的localhost
不会重定向到SSL|
这个也是网上一堆复制粘贴不写清楚的地方。
操作重定向
在操作属性中,重定向的URL:https://{HTTP_HOST}/{R:1}
,然后选中 附加查询字符串
以及重定向类型为303 即可。
总结
其实这些都不难,但是网上很多人写资料,写的不清晰也不检查,导致问了不少问题。
最终效果
额外的内容
本文的原文在 github,如果您发现了错漏,欢迎参与协同哦~】
协同地址:https://github.com/52ABP/Documents/blob/master/src/articles/IISConfigUrlRewrite.md
我们创建的 52ABP 框架,已经开始有很多小伙伴开始使用了。如果您对这套基于.net core +angular 的前后端分离的框架感兴趣的话,欢迎来找我们哦~
传送门: 2019 年起如何开始学习 ABP 框架系列文章-开篇有益
IIS配置Url重写实现http自动跳转https的重定向方法(100%解决)的更多相关文章
- IIS 配置 url 重写...
<?xml version="1.0"?> <configuration> <system.webServer> <rewrite> ...
- Nginx – rewrite 配置 URL重写及301跳转原理图
Nginx – rewrite 配置 URL重写 官网:http://nginx.org/en/docs/http/ngx_http_rewrite_module.html 语法:rewrite re ...
- IIS服务器设置http自动跳转https方法
很多站长在部署SSL证书后,网站实现https加密访问,但考虑到用户习惯了http访问,很多外链也是http访问形式,所以需要在IIS服务器配置http自动跳转https,避免用户通过http访问不到 ...
- IIS-详解IIS中URL重写工具的规则条件(Rule conditions)
出处:https://shiyousan.com/post/635654920639643421 本文结合官方文档和相关示例,详细记录了在IIS中URL重写工具下的规则条件(Rule conditio ...
- nginx证书制作以及配置https并设置访问http自动跳转https(反向代理转发jboss)
nginx证书制作以及配置https并设置访问http自动跳转https 默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译时指定–with-http_ssl_module参数,安装模块依赖 ...
- thinkphp5 部署到iis服务器url重写
thinkphp部署到iis服务器配置url重写的解决方法: 1.下载 url rewrite.下载地址:https://www.iis.net/downloads/microsoft/url-rew ...
- 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!
一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...
- Tomcat的Https设置及Http自动跳转Https
Https相关介绍 Https是由NetScape公司设计的一个基于Http的加密传输协议,可以这样理解Https = Http +SSL(安全套接层),Https的端口为443,而且还需要申请 ...
- Tomcat 服务器安装 SSL证书,实现 HTTP 自动跳转 HTTPS
本文以阿里云为例: 一.下载证书 1.1.登录阿里云:https://www.aliyun.com/ 1.2.控制台搜索:SSL证书 1.3.进入 SSL证书控制台 1.4.申请免费 SSL证书,已有 ...
随机推荐
- Windows桌面或服务器环境下嵌入JavaScript支持(JSRT)
很多人比较关注Google的JS V8 JavaScript引擎,确实Google最近很高调.但这个库在Windows下使用确实有点难度,即使在Linux嵌入,也需要下载gyp,编译安装,然后再下载v ...
- Scala实现树形结构
package graphx import java.util.ArrayList import java.util.List /** * Created by zhen on 2018/12/28. ...
- 用beamoff给VMware的Mac OS X 10.10.x加速
前言 今天刚在VMware里装了个Yosemite,然后测试了下看电影,真j8卡,试了下在vm里打开3d加速,然并卵,直接显示不能打开3d加速,然后找了下发现有个vga的什么软件,是vmware里的显 ...
- IPerf——网络测试工具介绍与源码解析(4)
上篇随笔讲到了TCP模式下的客户端,接下来会讲一下TCP模式普通场景下的服务端,说普通场景则是暂时不考虑双向测试的可能,毕竟了解一项东西还是先从简单的情况下入手会快些. 对于服务端,并不是我们认为的直 ...
- win10系统中如何解决cmd中的路径和现在电脑的用户名不一致
假设原用户名老王,已删除,但是cmd后路径还是C:\Users\老王>,这与现在用户laowng不一致了需改为C:\Users\laowang>. .先新建一个管理员账户laowang,然 ...
- Python 入门:基本语法
对于多数从其他编程语言转入Python的来说,或多或少会有些不习惯.如果沿用其他编程语言的语法来写Python代码,那么碰壁是不可避免的了. 本文是基于我看了两个小时的官方文档(Python 2.7 ...
- Win10家庭版-添加[组策略]
win10家庭版有很多功能都不能用,这一次就碰到了一个找不到‘组策略’的问题,在网上搜索到了一个方法,记录一下: 新建一个txt,将下面内容复制到文本中: =====分隔符====== @echo o ...
- ping百度域名时的收获
ping百度 你会发现ping www.baidu.com的时候,会转为ping www.a.shifen.com.但是ping baidu.com的时候却是普通的ip地址,而且ip地址还会变化.那么 ...
- 适合使用并行的一种bfs
这种写法的bfs和前面的最大区别在于它对队列的处理,之前的简单bfs是每次从队列中取出当前的访问节点后,之后就将它的邻接节点加入到队列中,这样明显不利于并行化, 为此,这里使用了两个队列,第一个队列上 ...
- ionic app开发遇到的问题
:processDebugResources FAILED FAILURE: Build failed with an exception. * What went wrong: Execution ...