太久沒更新自己的網站,最近發了幾篇新文,自己瀏覽時,才發現被瀏覽器標示為”不安全”。其實這網站只是發發自己的廢文感言,也沒有任何實質交易,或是文件密碼的交流,只要還沒被駭客入侵植入甚麼怪東西,應該也說不上甚麼不安全。不過,看著chrome標示不安全,或是Firefox 標示驚嘆號,而非綠色鎖頭,自己看久了也不爽,所以興起將網站加上加密連線的念頭。過程寫成筆記,免得自己忘了。
先修改http-ssl.conf
1 |
#Listen 443 |
把註解拿掉,改為
1 |
Listen 443 |
然後找到
1 2 |
SSLCertificateFile "conf/ssl.crt/server.crt" SSLCertificateKeyFile "conf/ssl.key/server.key" |
就是申請到的認證檔和私密金鑰。放哪就把路徑改過去。在下這邊申請的是免費的Lets Encrypt,收到有三個檔案,就是對應其中的Certificate,Privacy Key。
然後再改http.conf,加入
1 2 3 4 5 6 7 |
NameVirtualHost *:443 ServerName www.siriustsai.idv.tw(自己的網址) DocumentRoot "(網站的路徑)" SSLEngine on SSLCertificateFile "certificate.crt的位置" SSLCertificateKeyFile "private.key的位置" SSLCACertificateFile "ca_bundle.crt的位置" |
改完後,重啟Apache。
找到網站中的.htaccess,加入
1 2 3 |
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] |
讓所有http的連線要求都轉址到https。
最後再把網站中”所有的“有用到http的部分都改成https,這樣就大功告成了。(方法很多,可以輕易搜尋到的,就不寫了)