java nginx https_docker nginx 配置ssl,实现https
docker nginx 配置ssl,實現https
2019-09-05 16:06:35.0
nginx配置https總覽
在nginx配置ssl實現https,簡單來說分為三個步驟:
1 上傳ssl證書等文件
將 1_www.domain.com_bundle.crt 和 2_www.domain.com.key 上傳到nginx配置文件的目錄旁邊。
這兩個文件分別為 證書文件和密鑰文件 。
2 配置server節點監聽443端口
進行以下配置
server {
listen 443; #SSL 訪問端口號為 443
server_name www.domain.com; #填寫綁定證書的域名
ssl on; #啟用 SSL 功能
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; #請按照這個套件配置,配置加密套件,寫法遵循 openssl 標準。
ssl_prefer_server_ciphers on;
location / {
root /var/www/www.domain.com; #網站主頁路徑。此路徑僅供參考,具體請您按照實際目錄操作。
index index.html index.htm;
}
}
或較高版本的nginx可如下配置:
server {
listen 443 ssl; #SSL 訪問端口號為 443 并啟用 SSL 功能
server_name www.domain.com; #填寫綁定證書的域名
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; #請按照這個套件配置,配置加密套件,寫法遵循 openssl 標準。
ssl_prefer_server_ciphers on;
location / {
root /var/www/www.domain.com; #網站主頁路徑。此路徑僅供參考,具體請您按照實際目錄操作。
index index.html index.htm;
}
}
注意:
這里要確保兩個文件的位置是相對與nginx.conf配置文件的位置。如果在nginx.conf 文件中使用了incude,而這個server節點配置在其他文件中,則路徑還是相對于nginx.conf文件的位置。
3 修改80端口的配置
修改80端口的配置可以讓http的url轉發到https的url。
server {
listen 80;
server_name www.domain.com; #填寫綁定證書的域名
rewrite ^(.*)$ https://$host$1 permanent; #把http的域名請求轉成https
}
常見文件位置問題
證書文件和密鑰文件的位置是相對與nginx.conf配置文件的位置。如果在nginx.conf 文件中使用了incude,而這個server節點配置在其他文件中,則路徑還是相對于nginx.conf文件的位置。 如下圖:
docker中ssl文件的位置
docker 中,nginx容器如果沒有掛載ssl文件所在的目錄,則需要手動將這兩個文件復制在容器內部的nginx.conf文件旁邊。如下圖:
復制可使用 docker cp 命令。
驗證ssl配置的正確性
在sbin目錄下,執行 nginx -t
開放https 443端口
在主機的防火墻需要開放443端口,此外,如果還配置了云服務其的安全組,也需要開放443端口。
在docker容器中,需要重新運行nginx,并添加443端口的端口映射。
2019-09-05 16:06:35.0
總結
以上是生活随笔為你收集整理的java nginx https_docker nginx 配置ssl,实现https的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在考生文件夹存有JAVA3_注意:下面出
- 下一篇: java web 有哪些标签库_java