将证书文件上传至服务器任意位置,Nginx配置ssl证书

获取证书

以腾讯云为例,解析好域名后,前往证书申请页ssl证书申请,因为我的域名也是在腾讯云,所以点击申请后,可以配置自动DNS验证,如果域名不在腾讯云则需要去域名商添加解析,具体看文档指引。

6d71a0f969ad5ff392aa315f33850032.png

c67cfd8323b7997db7b70bb8e7feb9cc.png

申请完后等待审核即可,免费证书有效期为一年,一年后重新申请再替换文件就行,所以也是OK的。

配置动态端口转发

下载证书并上传到服务器

审核通过后会有邮件提示,前往证书列表页,下载对应的证书。

931945ad7591468e5e29570c6352ea04.png

是一个压缩包。里面有好几种服务器类型,我们选Nginx的,将里面两个文件上传到服务器上任意位置即可,我这里上传的是Nginx的conf文件夹下/usr/local/nginx/conf/cert,这样在配置的时候可以使用相对路径。

配置Nginx

我这里配置是用于小程序的后端API,服务器是使用Nginx + Springboot内置tomcat,假如springboot端口为8080,则在nginx的配置文件/usr/local/nginx/conf/nginx.conf中添加如下配置server {

listen 443;

#填写绑定证书的域名

server_name 域名;

ssl on;

location / {

#填写域名转发的端口

proxy_pass http://localhost:8080;

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

#填写两个证书的位置

ssl_certificate cert/xxx.com_bundle.crt;

ssl_certificate_key cert/xxx.com.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;

}

你在配置的时候只需要修改上面配置中的域名、端口、ssl两个证书的位置这三处就行。修改完成后,执行/usr/local/nginx/sbin/nginx -t检查配置是否有问题,没问题则执行/usr/local/nginx/sbin/nginx -s reload重启Nginx即可。

开启HTTP请求转发到HTTPS请求

例如访问http://www.baidu.com会自动跳转到https://ww.baidu.com的功能。

只需要添加如下配置:server {

listen 80;

#填写绑定证书的域名

server_name 域名;

rewrite ^(.*)$ https://$host$1 permanent;

}

添加完后重启Nginx,尝试访问http请求,看看地址栏能否正确转发到https,一般都OJBK

配置静态转发

当不转发端口,想用域名访问纯静态的网站,可以进行如下配置。server {

#SSL 访问端口号为 443

listen 443;

#填写绑定证书的域名

server_name www.domain.com;

#启用 SSL 功能

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;

#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

ssl_prefer_server_ciphers on;

location / {

#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。

root /var/www/www.domain.com;

index index.html index.htm;

}

}

这样访问域名可以直接访问文件夹下的文件。

本文由 visionki 创作,采用 知识共享署名4.0 国际许可协议进行许可

本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名

最后编辑时间为: Mar 17, 2021 at 04:01 pm

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值