織夢Dedecms程式開啟SSL 設定https教程
織夢https改造教程之基本步驟
注意:涉及到資料庫和模板操作前必須都先備份,否則弄壞了就蛋疼了,下面不再強調了。
1、申請證書:
網上有很多免費證書,阿里雲有1年的免費證書,西部數碼的以前免費,現在還收費8元,我主站加上手機站,花費了16元……wdcp自帶lets的免費證書,可以自動申請和部署,但是那個證書期限只有3個月,有點蛋疼,還是算了。到時候忘記換了搞的網站都無法訪問。
ssl證書是開啟https的必要前提,證書有付費的,有免費的,騰訊雲阿里雲等各大雲服務商都有提供免費的ssl證書。下面舉騰訊雲的例子:
1.註冊騰訊雲
http://partners.qcloud.com/invitation/996681198582ad35c39528
2.關聯我司作為服務商(非必要條件,友情關聯)
3.申請SSL證書
https://console.qcloud.com/ssl
二,上傳SSL證書到伺服器
騰訊雲面板下載的SSL證書壓縮包裡面包含各種伺服器引擎的證書,你需要選擇你的伺服器型別
比如我們用的是Nginx伺服器,就需要上傳Nginx專用的SSL證書。如果是IIS,就上傳IIS專用的
三,伺服器虛擬主機設定SSL證書路徑
上傳了SSL證書之後,我們還需在虛擬主機配置檔案裡面指定一下SSL證書的路徑,不然訪問會出錯。
別的伺服器我們並不瞭解。但是就我們現在用的WDCP面板+Nginx配置檔案的寫法是。你需要先找到
你伺服器虛擬主機配置檔案的路徑,我們的是/conf/vhost/435s.com.conf各有不同,舉一反三。
server {
listen 80;
root /www/web/435s_com/public_html;
server_name 435s.com 435s.com www.435s.com img.435s.mysitecdn.com;
index index.html index.php index.htm;
error_page 400 /errpage/400.html;
error_page 403 /errpage/403.html;
error_page 404 /errpage/404.html;
error_page 503 /errpage/503.html;
location ~ \.php$ {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
}
location ~ /\.ht {
deny all;
}
location / {
try_files $uri @apache;
}
location @apache {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
}
return 301 https://www.$server_name$request_uri;
}
server {
listen 443 ssl;
root /www/web/435s_com/public_html;
server_name 435s.com 435s.com www.435s.com img.435s.mysitecdn.com;
index index.html index.php index.htm;
error_page 400 /errpage/400.html;
error_page 403 /errpage/403.html;
error_page 404 /errpage/404.html;
error_page 503 /errpage/503.html;
location ~ \.php$ {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
}
location ~ /\.ht {
deny all;
}
location / {
try_files $uri @apache;
}
location @apache {
proxy_pass http://127.0.0.1:88;
include naproxy.conf;
}
ssl_certificate /www/ssl/435s_com/1_www.435s.com_bundle.crt;
ssl_certificate_key /www/ssl/435s_com/2_www.435s.com.key;
ssl_session_timeout 5m;
}
(把配置檔案程式碼貼出來貌似也無妨,別黑我們伺服器哈哈哈哈哈哈哈哈哈哈哈哈)
四,網站頁面js,css,以及圖片資源引用地址改為https
這個不用我說了吧,網站開啟https之後,頁面上使用http呼叫的資源都會無法呼叫。
你需要把http的資源全都改成https呼叫。記住,不能漏掉任何一個js引用或者圖片
如果有一個檔案不是https引用的,則你的網站雖然可以正常https訪問,但是位址列
的https標識不會完全變綠,360瀏覽器尤為明顯。這代表你網站雖然啟用了https
但是沒有做到完全的規範。被認定為不規範的https頁面。
2、伺服器支援:
我用的是wdcp程式,以前的2.5版本不支援在後臺直接改,自己去弄感覺煩,就去升級到wp3.2,這個最新版本後臺可以直接上傳證書部署,非常簡單。有點蛋疼的是wdcp直接升級不成功,因為西部數碼內建的wdcp是改過的,提交了工單他們也說搞不了,沒辦法只能去打包下載資料然後重灌系統了。這個要花費不少時間。
西部數碼同一個叢集的主機可以內網傳輸資料,阿里雲也是一樣的哦,這樣可以很快的完成資料轉移,特別是網站資料大的比較好用。有哪些,做網站就非常不錯了就是很苦逼
wdcp證書上傳和在網站管理裡面,ssl選擇開啟,證書上傳即可。
3、模板替換
模板中的所有http://www.peoplenews.org/全部替換為https://www.peoplenews.org/,這個看起來麻煩,其實很簡單,我將所有模板下載,用EditPlus開啟所有模組,然後ctrl+h查詢替換,勾選開啟的所有文件,即可1秒鐘完成所有模板替換。
記得css檔案也替換下哦,css檔案中一般是不會含有http://www.gookang.com/這種連結的,但是我今天在弄恆星兼職網的時候有一個廣告位老是不行,放上就不是綠鎖了,後來發現是css中有http://www.gookang.com/這個,改成https就好了。
4、文章內容替換
將所有文章內容中的http://www.gookang.com/替換為https://www.gookang.com/,主要是文章內容也就是body欄位和圖片連結地址。
這個就相對比較複雜了,假如你不會資料庫,就只有用dedecms自帶的替換了,非常慢。
地址:核心管理——批量維護——資料庫內容替換,按照要求操作,同時還有廣告管理裡面的都要換
我是在phpmyadmin裡面操作,首先搜尋http://www.gookang.com/,看哪些表有這個,然後用sql語句一一替換。
UPDATE `phome_enewsclasstemp_2` SET `temptext` = REPLACE( `temptext` , 'http://www.gookang.com', 'https://www.gookang.com' )
phome_enewsclasstemp_2是具體資料表,temptext是欄位,換成你需要換的就行了,我這個是帝國的,織夢一樣操作。
不會資料庫操作的建議還是在dedecms程式裡面操作吧,否則弄壞了資料庫就麻煩了,到時候你自己都不知道哪裡出了問題。
5、查詢
至此就基本改造完成了,網站訪問有了綠色小鎖,假如還沒有綠,就要仔細查詢看是哪裡有問題。