当你的站点使用了HTTPS之后,你可能会想把所有的HTTP请求(即端口80的请求),全部都重定向至HTTPS(即端口443)。这时候你可以用以下的方式来做到:(Apache mod_rewrite)
RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC] RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
把这段代码放在.htaccess文件,即可实现HTTP到HTTPS的重定向。
而当你又想用回HTTP的时候,反过来就可以了:
RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 443 RewriteRule ^(.*)$ http://stogd.com/$1 [R=301,L]
- 带www跳转不带www
RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC] RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
- 不带www跳转带www
RewriteCond %{HTTPS} !=on RewriteCond %{HTTP_HOST} !^www..+$ [NC] RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Apache, IIS,Tomcat,Nginx设置http跳转到https方法
怎么设置http跳转到https?在为网站部署SSL证书后,可以实现https加密访问,但是网站的用户往往习惯了http访问,这个时候我们就需要设置访问http时自动跳转到https。下面收集了几种常见的服务器环境下设置http跳转到https方法,供大家参考:
1、Apache设置http跳转到https
(1)Apache环境下实现整站http自动跳转到https需在网站的配置文件的标签内,键入以下内容:
redirect 301 /你的网页 https://你的主机+网页
2、IIS设置http跳转到https
IIS版本下,6.0和7.0及以上版本的设置方法有区别,IIS6.0中实现http跳转https方法是修改以下文件:C:WINDOWSHelpiisHelpcommon403-4.htm。IIS7.0及以上版本是路径:C:inetpubcusterrzh-CN403.htm,修改的内容如下图:
3、Tomcat设置http跳转到https
Tomcat 环境下设置http跳转https需要做两个地方改动:
(1)server.xml 中的端口要改成对应的“443”端口
4、Nginx设置http跳转到https
Nginx环境下设置http跳转https需在配置80端口的文件里面,写入以下内容即可。
转载请注明出处:https://stgod.com/1412/