安装SSL证书后实现Http自动跳转到Https

1、Apache版本

如果需要整站跳转,则在网站的配置文件的标签内,键入以下内容:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]

如果对某个目录做强制跳转,则使用以下代码:

RewriteEngine on
RewriteBase /yourfolder
RewriteCond %{SERVER_PORT} !^443$
#RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

2、Nginx版本

在配置80端口的文件里面,写入以下内容即可(主配置文件为443端口,新建一个80端口的配置文件作为虚拟网站)。

server {
listen 80;
server_name localhost;
rewrite ^(.*)$ https://$host$1 permanent;
location / {
root html;
index index.html index.htm;
}

3、PHP页面跳转:添加在网站php页面内

if ($_SERVER["HTTPS"] <> "on")
{
$xredir="https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
header("Location: ".$xredir);
}

4、单独页面通用代码段:较适合指定某一个子页单独https 在需要强制为https的页面上加入以下代码进行处理http—>https

<script language="JavaScript" type="text/JavaScript">
function redirect()
{
var loc = location.href.split(':');
if(loc[0]=='http')
{
location.href='https:'+loc[1];
}
}
onload=redirect
</script>