nginx部署https网站的实现步骤(亲测)

 更新时间:2025年02月13日 10:13:43   作者:chat2tomorrow  
本文详细介绍了使用Nginx在保持与http服务兼容的情况下部署HTTPS,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

公司本来有网站是http运行的,但因为产品出海,基本上都要求使用https,但又需要兼容已有的http服务,所以我自己尝试做了一次https的部署,目前是正常可用的。

使用 Nginx 部署 HTTPS 是确保网站安全的一项重要措施。

以下是如何使用 Nginx 部署 HTTPS 的详细步骤,包括获取 SSL 证书、配置 Nginx 和测试配置。

步骤 1:安装 Nginx

如果尚未安装 Nginx,请先安装 Nginx。

在 Debian/Ubuntu 系统上:

sudo apt update
sudo apt install nginx

在 CentOS/RHEL 系统上:

sudo yum install epel-release
sudo yum install nginx

步骤 2:获取 SSL 证书

因为我们的网站是部署在腾讯云上的,原来腾讯云是一次可以申请一年的免费证书,从2024年4月25日起只能3个月了,这个确实太恶心了。

主要是不想折腾了,花了99元一年买了一年的证书服务。

具体的证书购买方式就不描述了,有钱买证书哪都可以,以下是我们购买证书的地方。

步骤 3:手动配置 Nginx

如果你已经有 SSL 证书文件(例如从其他 CA 获取的证书),可以手动配置 Nginx。

将你的 SSL 证书文件和私钥文件上传到服务器。通常,它们存放在 /etc/ssl/certs/ 和 /etc/ssl/private/ 目录中。

编辑 Nginx 配置文件。打开你的网站配置文件(例如 /etc/nginx/sites-available/default 或 /etc/nginx/nginx.conf),并添加如下内容:

1. listen 443 ssl 这行可以让http和https都可以使用

2. ssl_certificate /etc/ssl/certs/yourdomain.com.crt;

   ssl_certificate_key /etc/ssl/private/yourdomain.com.key;

上面两行是主要的证书的配置,其他的没发现什么需要注意的。

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    # Redirect HTTP to HTTPS
    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name yourdomain.com www.yourdomain.com;

    ssl_certificate /etc/ssl/certs/yourdomain.com.crt;
    ssl_certificate_key /etc/ssl/private/yourdomain.com.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    root /var/www/html;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

步骤 4:测试 Nginx 配置

在重新加载 Nginx 之前,先测试配置文件是否有语法错误:

sudo nginx -t

如果配置正确,重新加载 Nginx:

sudo systemctl reload nginx

步骤 5:验证 HTTPS 部署

打开浏览器,访问 https://www.sqlynx.com,确保网站通过 HTTPS 正常加载,并且 SSL 证书有效。

结语

通过以上步骤,你应该已经成功地在 Nginx 上部署了 HTTPS。使用 HTTPS 可以有效地保护用户数据,提升网站的安全性和可信度。如果你有更多的定制需求,可以参考 Nginx 官方文档进行进一步的配置和优化。

到此这篇关于nginx部署https网站的实现步骤(亲测)的文章就介绍到这了,更多相关nginx部署https内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nginx层面配置基础用户验证的完整步骤

    Nginx层面配置基础用户验证的完整步骤

    这篇文章主要给大家介绍了关于Nginx层面配置基础用户验证的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Nginx具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Nginx服务器中配置GeoIP模块来拦截指定国家IP

    Nginx服务器中配置GeoIP模块来拦截指定国家IP

    Nginx中自带GeoIP模块可以屏蔽指定IP的请求,只不过默认没有被编译,打开以后我们只要再下载一个IP规则就行,Nginx服务器中配置GeoIP模块来拦截指定国家IP
    2016-06-06
  • nginx 某些url只能由特定ip访问的实现

    nginx 某些url只能由特定ip访问的实现

    在Nginx中针对某些URL只允许特定IP地址访问,本文就来介绍一下如何实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • 对nginx-naxsi白名单规则详解

    对nginx-naxsi白名单规则详解

    今天小编就为大家分享一篇对nginx-naxsi白名单规则详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Nginx实现负载均衡的方法总结

    Nginx实现负载均衡的方法总结

    这篇文章主要给大家总结介绍了关于Nginx实现负载均衡的一些方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Nginx具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • Nginx设置404错误页面跳转的几种方法总结

    Nginx设置404错误页面跳转的几种方法总结

    一个网站项目,肯定是避免不了404页面的,通常使用Nginx作为Web服务器时,有些相关配置方法,下面小编给大家带来了Nginx实现404页面的几种方法,感兴趣的朋友一起看看吧
    2024-03-03
  • Nginx 服务器重启关闭重新加载命令

    Nginx 服务器重启关闭重新加载命令

    这篇文章主要介绍了Nginx 服务器重启关闭重新加载命令,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • nginx代理去掉URL前缀的实现方法

    nginx代理去掉URL前缀的实现方法

    nginx作为一款广泛使用的反向代理服务器,在实际应用中,经常需要去掉代理请求中的前缀,下面这篇文章主要给大家介绍了关于nginx代理去掉URL前缀的实现方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • Nginx服务部署与配置全过程

    Nginx服务部署与配置全过程

    Nginx是一个高性能的Web服务器和反向代理服务器,具有高并发、高可靠性、热部署等特性,它支持HTTP、HTTPS、IMAP、POP3和SMTP协议,适用于静态资源服务、反向代理、负载均衡和API网关等场景,文章还介绍了Nginx的安装、升级和反向代理配置方法
    2025-12-12
  • 详解nginx代理天地图做缓存解决跨域问题

    详解nginx代理天地图做缓存解决跨域问题

    这篇文章主要介绍了详解nginx代理天地图做缓存解决跨域问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08

最新评论