Discuz教學-採用Let’s Encrypt&Ubuntu將DiscuzX3.2 SSL化
SSL化已經是時代不可缺少的事情,如果是自己的測試網站就算了,但如果是商業用 or 公司用就不能馬虎,尤其最近Google於今年七月將宣布沒有HTTPS的網站將列為不安全,所以今年之內將網站SSL化是勢必的!這邊HF也做了一下功課如何懶人SSL化Discuz。
系統:Ubuntu 14.04 LTS
PHP版本:5.6.5(印象我忘了XD)
Discuz : X3.2
依照Discuz官方論壇網友提供的文章,程式上是需要做一些小修改,否則無法正常SSL化。
首先我們要先針對Discuz原始碼做修正。
1. source/class/discuz/discuz_application.php
然後找
$_G['isHTTPS'] = ($_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
修改為以下
$_G['isHTTPS'] = ($_SERVER['SERVER_PORT'] == 443 || $_SERVER['HTTPS'] && strtolower($_SERVER['HTTPS']) != 'off') ? true : false;
存檔!
2. uc_server/avatar.php
查找以下
define('UC_API', strtolower(($_SERVER['HTTPS'] == 'on' ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].substr($_SERVER['PHP_SELF'], 0, strrpos($_SERVER['PHP_SELF'], '/'))))
修改為以下
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'], '/'))));
存檔,這時候就可以發現大多連結可以HTTPS了,
再來就是針對系統後台的設置
1. 後台 > 站長 > UCenter设置 > UCenter 訪問地址,修改成https
2. UCenter後台 > 應用管理 > 應用的主URL,修改成https
3.清理暫存即可。
※這邊有個地方要注意,就是導航列若沒有正常HTTPS的話,可能是你跟HF做一樣的事情,請刪除後台 > 全局 > 域名設置 > 應用域名 > 默認裡面默認域名刪除即可正常HTTPS。
最後一個地方做調整就是,在於模板修正部分模板中的footer.html及header.html可能會有寫死http連結,要自己去修正唷~
如果是使用預設的模板,HF印象header.html裏面有五個地方是HTTP。
申請Let’s Encrypt證書
首先先輸入以下指令 (XXXXX.com)請輸入你的域名,因為是透過你的域名去簽證)
sudo a2ensite XXXXX.com.conf
service apache2 reload
然後安裝Let's Encrypt
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache
替網站建立SSL證書
sudo certbot --apache -d XXXXX.com
設定途中會出現兩個選項(1) No Redirect 或 (2) Redirect 所有 HTTP 網頁至 HTTPS
HF這邊是選擇(1)
就這樣 Let’s Encrypt安裝成功了,可以去開啟網站看看是否已經出現綠色的鎖頭囉~
最後一個重點,因為 Let’s Encrypt簽證有效時間為90天,所以這邊要建議設定自動排程讓他更新
sudo vim crontab -e
於檔案內加入以下代碼,代表每天的早上 6 時 00 執行自動更新:
00 6 * * * /usr/bin/certbot renew --quiet
sudo certbot --apache
如果您覺得HF寫得還不錯,可以透過以下來贊助HF唷~
幣別
|
Bitcoin(BTC)
|
錢包地址
|
3PqFZKa5if4566u7xctKhd8jh6ypBccEAL
|
幣別
|
Litecoin(LTE)
|
錢包地址
|
LfRQQDDfpnTAedUotv1LBPR7XnUsEqaCAe
|
幣別
|
Ethereum(ETH)
|
錢包地址
|
0x5955a215e1066875b0cbb4a284d60aa0c8abddf2
|
幣別
|
Zcash(ZEC)
|
錢包地址
|
t1VbdgDNZJooYYw3mTqJHQLA1PRELWX4cUq
|
當然如果你想幫HF挖礦的也是可以(疑?
留言
張貼留言
留言時請注意句子內容,若有色情、廣告、引戰等都會刪除唷,請遵守網路規範及保持風度^____^
※基本上您問問題,HF都會盡最快速度來回您(基本上24H內),希望HF的回答及解釋可以替您解決問題。