前提:apache 服务器设置 HTTP 重定向到 HTTPS
方法:修改网站根目录下的.htaccess,增加:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
或者:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R=301,L]
修改完以后网址会自动重定向,这时我发现我的搜索页面分页出现了问题,需要做如下修改:
路径:/phpcms\libs\functions\global.func.php 884行:
改为:
//获取你的当前域名是使用http协议还是https加密传输协议
$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';
if($http_type == "https://"){
$url = str_replace(array('https://','//','~'), array('~','/','https://'), $url);
}else{
$url = str_replace(array('http://','//','~'), array('~','/','http://'), $url);
}