Apache mod_rewrite实现HTTP和HTTPS重定向跳转
Posted 碳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache mod_rewrite实现HTTP和HTTPS重定向跳转相关的知识,希望对你有一定的参考价值。
当你的站点使用了HTTPS之后,你可能会想把所有的HTTP请求(即端口80的请求),全部都重定向至HTTPS(即端口443)。这时候你可以用以下的方式来做到:(Apache mod_rewrite)
1
2
3
4
5
6
|
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://jb51.net/$1 [R=301,L] </IfModule> |
把这段代码放在.htaccess文件,即可实现HTTP到HTTPS的重定向。
而当你又想用回HTTP的时候,反过来就可以了:
1
2
3
4
5
6
|
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 443 RewriteRule ^(.*)$ http://jb51.net/$1 [R=301,L] </IfModule> |
其中R=301表示Moved Permanently,即告诉搜索引擎或者浏览器下去直接访问后者的地址,如果只是试验性地重定向,可以使用R=302(Found)。
FROM: http://www.jb51.net/article/67554.htm
另一种方法:
https://www.cnblogs.com/cnbing/p/6957157.html
以上是关于Apache mod_rewrite实现HTTP和HTTPS重定向跳转的主要内容,如果未能解决你的问题,请参考以下文章
Apache2 - 使用 mod_rewrite 代理到另一个域
Apache mod_rewrite 和 PHP GET 数组
如何在 apache 上用 mod_rewrite 重写我的 url?