nginx配置https的方法示例(免费证书)

下面是详细的“nginx配置https的方法示例(免费证书)”攻略。

准备工作

在配置HTTPS之前,需要准备以下材料:

  1. 一个域名
  2. 一台服务器(可以为Linux或Windows服务器)
  3. 一个电子邮件账户(用于向证书颁发机构CA请求证书)

第一步:申请证书

我们可以免费向Let’s Encrypt证书颁发机构申请证书,以获得可靠的HTTPS证书。

  1. 安装certbot工具(为方便使用,请安装加入了Nginx插件的版本)
$ sudo apt-get update
$ sudo apt-get install certbot python-certbot-nginx -y
  1. 申请证书(以example.com为例)
$ sudo certbot certonly --nginx -d example.com

执行以上命令后,请按照提示输入您的电子邮件地址和同意条款,证书生成后默认保存在/etc/letsencrypt/live/example.com路径下。

第二步:配置Nginx

  1. 编写HTTPS服务器块配置文件example.com.conf
server {
    listen 443 ssl;
    server_name example.com;
    root /wwwroot/example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_session_timeout 5m;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:\
            ECDHE-RSA-AES128-GCM-SHA256:\
            ECDHE-RSA-AES256-SHA384:\
            ECDHE-RSA-AES128-SHA256:\
            ECDHE-RSA-AES256-SHA:\
            ECDHE-RSA-AES128-SHA:\
            RSA-AES256-GCM-SHA384:\
            RSA-AES128-GCM-SHA256:\
            RSA-AES256-SHA256:\
            RSA-AES128-SHA256:\
            RSA-AES256-SHA:\
            RSA-AES128-SHA;
    ssl_prefer_server_ciphers on;

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

    location / {
        index index.html;
    }
}
  1. 在原来的HTTP块中,添加重定向到HTTPS服务器块的配置
server{
    listen 80;
    server_name example.com
    root /wwwroot/example.com;

    location / {
        index index.html;
        return 301 https://$server_name$request_uri;
    }
}

完成

配置完成后,您需要重启Nginx服务,运行以下命令:

$ sudo systemctl restart nginx

这样,您的网站就可以使用HTTPS协议进行访问了。

总结

这就是配置Nginx使用HTTPS的完整攻略,我们可以免费申请Let's Encrypt证书,并使用Nginx进行配置。希望这篇攻略对您有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx配置https的方法示例(免费证书) - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Centos在线安装Nginx1.7.4

    一、安装准备 首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以执行如下命令安装 yum install gcc-c++ yum install pcre pcre-devel yum install zl…

    Nginx 2023年4月12日
    00
  • nginx提示地址或端口被占用

    今天小编在启动nginx 的时候遇到如下的错误   Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already use) 这个就是nginx 的80 端口被占用了 我们时常在nginx启动或者关闭关闭过多的情况下出现的 1、检查80端口被什么程序占用 fuse…

    Nginx 2023年4月11日
    00
  • Docker容器安装nginx基本步骤Yum版

    首先我们来科普一下nginx: Nginx (engine x) 是一个高性能的HTTP和俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。 其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0…

    2023年4月10日
    00
  • Centos下编译安装Nginx教程详解

    下面我来详细讲解“Centos下编译安装Nginx教程详解”的完整攻略。本文将包含两条示例说明,分别介绍在CentOS 7和CentOS 8下编译安装Nginx的步骤。 环境准备 在开始安装之前,我们需要进行环境准备。本次安装需要经过以下步骤: 更新系统 安装编译Nginx所需依赖 下载Nginx源码包 编译安装Nginx 具体操作如下: 更新系统 在Cen…

    Nginx 2023年5月16日
    00
  • Nginx定义域名访问方式

    下面是关于Nginx定义域名访问方式的完整攻略。 步骤1:安装Nginx 首先需要在服务器上安装Nginx。如果已经安装了,请跳过此步骤。 sudo apt update sudo apt install nginx 步骤2:配置虚拟主机 虚拟主机允许多个网站在同一个服务器上运行。要定义域名访问方式,需要先配置虚拟主机。 打开默认配置文件。 sudo nan…

    Nginx 2023年5月16日
    00
  • thinkcmf3 和thinkcmf5 在 Nginx 配置的区别

    配置教程:https://www.thinkcmf.com/topic/351.html Thinkcmf3: server {         listen       80;         server_name  lh.scapp.nd.com lh.scapp.nd.com;         root   “D:/phpStudy/WWW/sc_a…

    Nginx 2023年4月13日
    00
  • Nginx ACCESS阶段 Satisfy 指令

    L:60     这里一定要记住 return 指令所对应的阶段 早与access 因此如果location 有return 的话 那么 deny可能都会失效  

    Nginx 2023年4月13日
    00
  • Nginx+Tomcat的服务器端环境配置详解

    下面我将针对“Nginx+Tomcat的服务器端环境配置详解”进行完整的讲解和示例说明。 一、Nginx+Tomcat的服务器端环境配置详解 1. 准备工作 在配置Nginx+Tomcat之前,我们需要准备好以下内容: 安装好Nginx和Tomcat 熟悉Nginx和Tomcat的基本配置 熟悉Linux系统常用命令 2. Nginx配置 在Nginx的配置…

    Nginx 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部