首页 > 编程知识 正文

nginx部署ssl证书,nginx添加ssl模块

时间:2023-05-06 05:35:27 阅读:281172 作者:1549

Windows服务器nginx多个二级域名部署ssl证书超详细步骤(https)

下面使用腾讯云进行演示。

一、申请免费的SSL证书

参考腾讯云官方文档即可:https://cloud.tencent.com/document/product/400/6814

  由于是免费的ssl证书,且DVSSL证书审核采用的是非人工审核,即审核时间极短(一般短着几十秒,长着一两分钟)

  这个过程中,DNS解析 DNSPod自动添加记录。即自动添加DNS验证

二、配置nginx

  将SSL证书下载下来,上传至云服务器。

  解压之后将key文件和pem文件提取出来。

打开nginx文件目录下conf文件夹。

以下指明的端口都需要在云服务器管理面板开启相应端口的防火墙(添加规则)

http { #防止二级域名过长,nginx解析不了的问题,必须是6的倍数(即当二级域名过长,增大即可)。 server_names_hash_bucket_size 64; include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { #nginx监听端口 listen 520; #监听ssl端口 listen 443 ssl; #绑定的二级域名 server_name love.abc.cn; #ssl on; #pem以及key所在文件夹 ssl_certificate C:/Users/Administrator/Desktop/ssl/love/love.abc.cn.pem; ssl_certificate_key C:/Users/Administrator/Desktop/ssl/love/love.abc.cn.key; #默认配置 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; #静态html页面所在文件夹(可以是相对路径也可以是绝对路径) root C:/Users/Administrator/Desktop/heart; #启动页面 index index.html index.htm; }#同上 server { listen 80; listen 443 ssl; server_name filebrowser.abc.cn; #ssl on; ssl_certificate C:/Users/Administrator/Desktop/ssl/filebrowser/filebrowser.abc.cn.pem; ssl_certificate_key C:/Users/Administrator/Desktop/ssl/filebrowser/filebrowser.abc.cn.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; #charset utf-8; location / { #nginx反向代理默认配置 #避免多个二级域名(同样的公网IP)绑定多个端口ngnix反向代理不了的问题 proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; #目的转发端口(应用程序进程所绑定的IP及端口号) proxy_pass http://localhost:81; #默认配置 proxy_redirect off; break; } } #同上 server { listen 80; listen 443 ssl; server_name git.abc.cn; #ssl on; ssl_certificate C:/Users/Administrator/Desktop/ssl/git/git.abc.cn.pem; ssl_certificate_key C:/Users/Administrator/Desktop/ssl/git/git.abc.cn.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; charset utf-8; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_pass http://localhost:82; proxy_redirect off; break; } } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }} 三、nginx常用命令

  首先我们需要到nginx.exe所在文件路径,输入cmd,然后按下回车键打开DOS界面。

常用的可执行的nginx命令

start nginx(启动nginx)nginx.exe -s reload(重启nginx)nginx.exe -s stop或者nginx.exe -s quit(关闭nginx)

启动nginx之后,我们就可以通过https访问我们的域名了!

最后一步:可以通过腾讯云平台的证书监控 SSLPod进行监控(可参考)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。