侧边栏壁纸
  • 累计撰写 45 篇文章
  • 累计创建 15 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

【Nginx】给Nginx配置SSL证书

Administrator
2024-09-22 / 0 评论 / 0 点赞 / 146 阅读 / 7699 字 / 正在检测是否收录...

1. http协议和https协议对比

  1. http协议:是超文本传输协议,信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息。默认端口为80。

  2. https协议:HTTPS使用公钥和私钥两种密钥,实现加密和解密的过程,是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议。为浏览器和服务器之间的通信加密,确保数据传输的安全。默认端口为443。

HTTP页面可以通过IP直接访问,而HTTPS页面访问必须绑定域名,通过域名访问。

2. 准备服务器和域名

以腾讯云为例,已经购买了应用服务器和域名。并且域名解析已完成。(说明,域名如要使用还需要备案。)

云服务器购买链接:https://buy.cloud.tencent.com/

域名购买/注册链接:https://console.cloud.tencent.com/domain/all-domain/all

3. 购买SSL证书

可以购买证书,另外腾讯云有免费的SSL证书可以申请。

SSL证书购买链接:https://console.cloud.tencent.com/ssl

提交申请,审核完成即可。

4. 修改nginx配置文件

nginx自行安装,可以参考yum安装方式:Nginx基本常识及安装方法

vim /etc/nginx/nginx.conf

server {
    listen       443 ssl;    # 监听443端口
    server_name  jiangstudy.online www.jiangstudy.online;     # 自己的域名

    ssl_certificate      /etc/cert/jiangstudy.online_bundle.crt;     # 证书路径,需上传到对应的路径下
    ssl_certificate_key  /etc/cert/jiangstudy.online.key;     # 证书路径,需上传到对应的路径下

    location / {
        proxy_pass http://localhost:8090;   # 开启反向代理到后端运行程序,个人博客
    }
}

5. 测试

https://jiangstudy.online/

6. 补充

有些用户可能并不注意输入的是https,如果输入http,那么就会被转发到80端口,导致SSL配置没有生效,可以在配置中让http请求转发到https请求。

return 301 https://$host$request_uri;
或
rewrite ^(.*)$  https://$host$1 permanent;

选择一种方式就行。

0
博主关闭了所有页面的评论