重定向

通过url规则匹配重定向到新的url中,使用浏览器打开链接时,视觉上会看到http变成https,就好像打开http://www.baidu.com,链接会变成https://www.baidu.com

我这边站点上挂了三个子站点,Api为接口,其他两个为后台系统、H5

如果把重定向的规则建立在Sites上的话,下面的子站点将都适用于此规则,但是

弊端:对api进行post请求,url被重定向到新的地址上,由于是重定向跳转,所以post请求会变成get请求,会出现问题。

解决办法:如果不是所有都需要http强转https,重定向规则就不要设置到总站点上,哪里需要建哪里就好

好了,我们开始创建重定向规则

①   安装好URL重写模块成功后,在WeiSitesWeixinPlat站点分别添加URL重写入站规则

单机需要建立规则的站点(以WeiSites为例),双击“URL重写”,在右边窗体中选择“添加规则”,并添加一个空白规则,如下所示:

②   添加以下规则,如图所示(名字随意):

模式:

(.*)

条件:

{HTTPS} 与模式匹配  ^OFF$

{HTTP_HOST} 与模式不匹配 ^(localhost)

③   填写结束之后点击右上角的“应用”即可。

重定向完成,在浏览器输入你要访问的链接,如果是http,就会重定向到https了。需要做其他的重定向,修改规则就可以了,还是很强大的

匹配规则取得是当前站点后面的路径,所以规则不可直接写http替换成https

 

重写URL

通过url规则匹配重写url,使用浏览器打开链接时,视觉上不会看到变化

举个最简单的例子,现在有一个index.html,但是我希望在浏览其中输入index.himmy就能浏览到这个页面,且地址栏不会看到请求路径的变化。像之前做.aspx重写成.html还是很常见的。

新建一个空白入站规则

我们来测试下这个模式

我们可以看到我们的请求被拆分了几块,{R:1}就是我们需要截取的那部分,我们继续

操作中设置重写的url,将{R:1}和html拼接,就可以了。访问该网站时,himmy就会被替换成html,地址栏时看不到变化的。

同理,http重写成https用重写也是可以的,看需求定了。由于http和https是请求头,所以需要和重定向一样设定,看下面。

总站点匹配规则取得是“/”后面的路径

子站点匹配的是站点后面的路径

所以在实现http重写成https时,匹配规则和条件还是得按照重定向的写(名字随便)

操作类型是重写

完成。