設為首頁收藏本站

艾歐踢論壇

 找回密碼
 立即註冊

QQ登錄

只需一步,快速開始

搜索
熱搜: 活動 交友 discuz
查看: 885|回復: 0
打印 上一主題 下一主題

discuz X3.2、X3.3、X3.4程序如何全站開啟https

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2018-3-3 10:33:36 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
discuz X3.2、X3.3、X3.4程序如何全站開啟https 原文網址
discuz X3以上全站開啟https,首先第一步需要申請ssl證書和空間部署https ,discuz 開源程序部署https需要修改哪些地方。
以3.4為例:
第一步、修改source/class/discuz/discuz_application.php(3.4在373行左右,3.3以下在187行左右)
  1. $_G['isHTTPS']=($_SERVER['HTTPS']&&strtolower($_SERVER['HTTPS'])!='off')?true:false;
複製代碼


修改為:
  1. $_G['isHTTPS']=true;
複製代碼


第二步、修改uc_server/avatar.php(3.4在14行左右,3.3以下在27行左右)


  1. define('UC_API',strtolower(($_SERVER['HTTPS']=='on'?'https':'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'],0,strrpos($_SERVER['PHP_SELF'],'/'))));
複製代碼

修改為:

  1. define('UC_API',strtolower(($_SERVER['SERVER_PORT']==443||$_SERVER['HTTPS']=='on'?'https':'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'],0,strrpos($_SERVER['PHP_SELF'],'/'))));
複製代碼


第三步、修改/template/default/common/header.htm(如果你是用的其他模板就直接進入你目前用的模板目錄找到header.htm文件)

將http://全部查找替換為:https://(一共5處)
  1. 進入搜索替換頁面搜索http://全部替換成https://
複製代碼


第四步、登陸discuz網站後台–全局–站點信息–網站URL: 將http://改成https://網址

  1. 將http://改成https://網址
複製代碼



第五步、後台–站長–UCenter設置–UCenter訪問地址 改成 https://網址
  1. UCenter訪問地址改成https://網址
複製代碼


第六步、後台–UCenter(如果不能正常訪問可以在新窗口打開,也可以直接訪問UC地址)–應用管理–點右邊的編輯–應用的主URL 改成https://網址
  1. 將http://改成https://網址</p>
複製代碼


第七步、後台–工具–更新緩存

  1. 點擊工具–確定更新緩存
複製代碼


第八步、全站部署好後,當然要把http://做301全部跳轉到https://

301跳轉是還可以打開source/class/class_core.php文件,在文件裡面搜索set_exception_handler 找到:
  1. set_exception_handler(array('core','handleException'));
複製代碼

後面加上:

  1. if($_SERVER['SERVER_PORT']!='443'&&$_SERVER['PHP_SELF']!='/api/uc.php'){
  2. if(!preg_match("/(Zidingyi|Bot|Crawl|Spider|slurp|sohu-search|lycos|robozilla)/i",$_SERVER['HTTP_USER_AGENT'])){
  3. header('HTTP/1.1 301 Moved Permanently');
  4. header('Location:https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
  5. exit;
  6. }
  7. };
複製代碼


最後一步是登陸 申請ssl平台HTTPS認證!

一年只要4.99 USD,一次申請三年也不超過15 USD。
為什麼可以這麼便宜?
因為認證機構 科摩多(Comodo Group, Inc) 是第二大商業核准憑證的發行者,申請完頂級認證後,是賣給全世界的。
6 Ways to Get Free SSL Certificate
  • Let’s Encrypt
  • Cloudflare
  • SSL For Free
  • ZeroSSL
  • Comodo SSL
  • OpenSSL
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 轉播轉播 分享分享 分享淘帖
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

小黑屋|Archiver|手機版|艾歐踢創新工坊    

GMT+8, 2024-5-16 04:56 , Processed in 0.224753 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表