2核1G3M服务器88一季度

腾讯云,阿里云百度云等 折扣价→点我←

dz 强制HTTPS http:// 跳转至 https://的解决方案 discuz 教程

游客1 游客组

打开 source/class/class_core.php 文件,在
set_exception_handler(array('core', 'handleException'));
后面加入:
if($_SERVER['SERVER_PORT'] != '443' && $_SERVER['PHP_SELF'] != '/api/uc.php') {         if(!preg_match("/(Caogen8|Bot|Crawl|Spider|slurp|sohu-search|lycos|robozilla)/i", $_SERVER['HTTP_USER_AGENT'])) {                 header('HTTP/1.1 301 Moved Permanently');                 header('Location: https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);                 exit;         } elseif(preg_match("/(Baidu|Google)/i", $_SERVER['HTTP_USER_AGENT'])) {                 header('HTTP/1.1 403 Forbidden');                 exit;         } }


说明:当访问端口不为443(即https)时,如果不是搜索引擎则跳转到https页面,否则如果是百度或Google蜘蛛(这两个搜索引擎已支持收录https)则返回403禁止访问,避免重复收录 http 和 https 或优先收录了 http ,其它搜索引擎未定义,正常返回 http 页面(其它搜索引擎可能不支持收录 https ,因此开放 http 给他们)。
以上代码中“Caogen8”可以任意修改,管理员使用以下UA可以不跳转到https,便于对http版进行调测:
Mozilla/5.0 (compatible; Zidingyi/2015; +http://www.xxx.com)

站长窝论坛版权声明 1、本帖标题:dz 强制HTTPS http:// 跳转至 https://的解决方案
2、论坛网址:站长窝论坛
3、站长窝论坛的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
4、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
5、站长窝论坛一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本帖由游客1在站长窝论坛《程序综合区》版块原创发布, 转载请注明出处!
评论
最新回复 (2)
  • shy_kevin 一级用户组
    引用 2
    了解学习下,好网站
    2017/12/22 22:27:35 只看Ta 回复
  • jkewajj 三级用户组
    引用 3
    老大,我的站是新站,无论搜索引擎还是用户,我都希望跳转到https,目前自己用IIS 伪静态规则实现了
    、实现了 http 全站跳转 https
    但是不知道 不带www 跳转 带www 改怎么实现了,还请帮助
    主要是我不能 全部跳转 因为手机版使用的是 m.xxx.com 这个不能跳转到www了
    其他 跳转
    2018/03/02 03:20:46 只看Ta 回复
返回
发新帖