最近幾年HTTPS取代HTTP已經成爲大趨勢,HTTP是超文本傳輸協議,信息是明文傳輸的,而HTTPS是安全超文本傳輸協議,須要證書和提供安全鏈接,換句話說,HTTPS是嵌套了SSL加密的HTTP鏈接,其內容由SSL先加密,而後再傳輸。nginx
簡單來說,HTTPS是加過密的HTTP。因爲網絡上傳輸的數據是加密的,用戶在瀏覽網頁時,除了用戶本身能夠看到當前在看什麼網頁,其餘第三方是沒法得知用戶在作什麼的。好比用戶在網上登陸或輸入其餘敏感信息進行傳輸時一旦使用HTTPS,那麼數據傳輸就不是明文了,對於第三方來說就沒法獲取你的敏感信息。sql
那麼既然去趨勢,本身也嘗試着將本身的博客由HTTP升級到HTTPS,特作下記錄和總結。以防後續再用,或者給須要的人作參考。shell
能夠選擇騰訊雲、阿里雲合做的賽門鐵克簽署的證書,申請後能夠無償使用一年,聽說,一年後能夠繼續申請,再換個證書就好了,有待驗證,具體可在以下頁面作申請,這裏也不過多描述,申請的時候都有詳細的說明。
數據庫
申請完成後,進行下載,裏面有apache、nginx等對應服務的證書:
apache
可先參考:https://cloud.tencent.com/document/product/400/4143安全
Ubuntu下的apache2目錄結構是:服務器
– 默認站點在 /var/www/ – 配置文件在 /etc/apache2/ – 日誌在 /var/log/apache/ – 啓動腳本是 /etc/init.d/apache2
etc/apache2下的文件夾與文件markdown
apache2.conf:Apache的主要配置文件,包含全局配置。 envvars:Apache2環境變量設置。 ports.conf:配置Apache監聽的端口。 mods-available:這個目錄包含模塊和模塊配置文件,不是全部的模塊都有配置文件。 mods-enabled:持有/etc/apache2/mods-available目錄下文件的連接,當該目錄下有一個模塊文件和其配置文件,那麼Apache重啓後該模塊將生效。 sites-available:這個目錄包含Apache虛擬主機的配置文件。虛擬主機容許Apache配置多個站點併爲每一個站點配置不一樣的參數。後面下面配置的時候會配置80端口的http重定向爲443的https。 sites-enabled:持有/etc/apache2/sites-available目錄下文件的連接。當Apache重啓後,該目錄中包含的站點將會被激活。
sudo apt-get install openssl
sudo a2enmod ssl
sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/001-ssl.conf
以下軟鏈接就創建好了:
- 修改 001-ssl.conf 配置網絡
SSLEngine on SSLCertificateFile /etc/apache2/sslcert/2_www.87testing.com.crt SSLCertificateKeyFile /etc/apache2/sslcert/3_www.87testing.com.key SSLCertificateChainFile /etc/apache2/sslcert/1_root_bundle.crt
sudo service apache2 restart
這時候訪問https://87testing.com,就能夠正常打開可信任了wordpress
RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.87testing.com/$1 [R=301,L] RewriteCond %{HTTP_HOST} ^87testing.com [NC] RewriteRule ^(.*)$ https://www.87testing.com/$1 [L,R=301]
服務器上進入當前數據庫:
Update wp_options set option_value = ‘https://87testing.com’ where option_id in(1,2); update wp_posts set post_content = replace(post_content, 'http://87testing.com','https://87testing.com');
最後重啓下apache服務:
sudo service apache2 restart
此時無論輸入87testing.com就能夠正常跳轉到https://87testing.com,而且可信任了。。。