最近跟室友要一起搞一個個人公眾號,提前想把生態想清楚了,所以准備部署一個網站
正好公司有Microsoft Visual Studio Professional訂閱,每個月有50刀免費額度,對於Azure來說50刀也不算什么,不過支撐一個個人網站還是可以的,畢竟當前還沒有多少用戶,等用戶數量龐大以后也就不愁server的問題了hiahia
好了跑偏了。
網站暫定先用WordPress,自己開發能力不強,加上現在WordPress的SEO好像不是很差,綜合考慮就是這樣。
誰知一看WP文檔發現現在要求Server必須支持HTTPS,我就去華騰雲申請了一個免費的個人SSL證書
不得不說國內的互聯網公司效率還是及其高的,從申請到發證書全程不超過一個小時
申請證書的過程就不多說了,申請完自己信心滿滿地跑去Server部署,參考騰訊給出的配置文檔
對於Nginx來說是這樣配置的:
server {
listen 443;
server_name www.domain.com; #填寫綁定證書的域名
ssl on;
ssl_certificate 1_www.domain.com_bundle.crt;
ssl_certificate_key 2_www.domain.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照這個協議配置
ssl_ciphers ECDHE-RSA-AES128-GCM- SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照這個套件配置
ssl_prefer_server_ciphers on;
location / {
root html; #站點目錄
index index.html index.htm;
}
}
還有這么一段話:
對於用戶不知道網站可以進行https訪問的情況下,讓服務器自動把http的請求重定向到https。
在服務器這邊的話配置的話,可以在頁面里加js腳本,也可以在后端程序里寫重定向,當然也可以在web服務器來實現跳轉。Nginx是支持rewrite的(只要在編譯的時候沒有去掉pcre)
在http的server里增加rewrite ^(.*) https://$host$1 permanent;
這樣就可以實現80進來的請求,重定向為https了。
配置好這個重定向以后,從Firefox登錄發現提示該網站永久重定向,心想不太對
后來又查到一篇博文發現原來是這個樣子:
listen 80 default backlog=2048; #如果硬性要求全部走https協議,這一行去除
listen 443 ssl; #如果硬性要求全部走https協議,這里去除ssl
#ssl on; #如果硬性要求全部走https協議,這里開啟ssl on
所以關鍵點就是在這三行配置:去掉80端口監聽、監聽443端口並且后不加ssl、ssl on。
最后server端的配置如下:
server {
listen 443;
server_name www.***.ml;
ssl on;
ssl_certificate 1_www.icemusic.ml_bundle.crt;
ssl_certificate_key 2_www.icemusic.ml.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root /web;
index index.html index.htm;
}
}
再說一句,我之前是有兩個二級域名,也是在這個配置文件里配置的,不知道是不是影響,暫時先去掉了,后面再加的話在寫配置方法。
最后為公眾號打個call啦:喜歡音樂的同學歡迎捧場,用音樂記錄你們的愛情和生活。
微信公眾號:冰棒音樂日記