您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“Let’s Encrypt怎么搭建HTTPS網站”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Let’s Encrypt怎么搭建HTTPS網站”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
阿里云服務器CentOS7.3,Nignx,Let’s Encrypt做免費的HTTPS證書。
1、服務器開放端口:443,80(服務器防火墻和阿里云控制臺都要開放這兩個端口,如果沒有開放后面設置域名時,會報錯連接域名超時的)
2、安裝一個nginx,并且測試下可以訪問嗎,訪問個主頁試試
3、準備做完了我們開始安裝,從服務器上面獲取證書:
$ git clone https://github.com/letsencrypt/letsencrypt.git $ cd letsencrypt $ sudo ./letsencrypt-auto certonly
根據該向導,選用standalone模式填寫自己的郵箱域名等等
4、然后我們就能在/etc/letsencrypt/live/mydomain下面看到privkey.pem和fullchain.pem文件
5、我們修改nginx的配置文件,屏蔽http配置文件,設置https配置文件讓它支持https協議,默認nginx配置文件路徑/etc/nginx/nginx.conf:
server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name www.linuxidc.com; root /usr/share/nginx/html; ssl_certificate "/etc/letsencrypt/live/www.linuxidc.com/fullchain.pem"; ssl_certificate_key "/etc/letsencrypt/live/www.linuxidc.com/privkey.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on;# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf; location / { } location ~ \.php$ { root /usr/share/nginx/html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
其實nginx配置文件后面有https的模板,默認屏蔽了
6、然后我們重啟下nginx,systemctl stop nginx.service和systemctl start nginx.service,用http協議訪問網站的某個頁面不行,用https協議訪問成功,https://www.linuxidc.com/indexs.html
7、前面我們怕沖突把http的配置給屏蔽了,現在我們要實現訪問http時自動跳轉到https,例如訪問baidu.com就會自動跳轉到https://www.baidu.com
我們再加一個server實現跳轉
server{ listen 80; server_name www.linuxidc.com;return 301 https://$host$request_uri; }
然后重啟nginx
8、 最后我們看下頒發的證書,右擊頁面->檢查->security->View certificate,我們看下證書的有效期是3個月,letsencrypt是支持自動獲取證書的,也就是說你可以設置在證書失效前例如一個月自動再請求新的證書,這樣我們以后就不用擔心證書失效了
9、實現定時更新證書,我們可以用linux自帶的定時器crontab
$ crontab -e
輸入:
30 2 1 * * /usr/bin/certbot renew >> /var/log/le-renew.log 35 2 1 * * /usr/bin/systemctl reload nginx
保持退出,上面的意思是在每個月的1號2點30分自動更新證書,在每個月的1號2點35分重新加載nginx
讀到這里,這篇“Let’s Encrypt怎么搭建HTTPS網站”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。