【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤

首先安装nginx

nginx安装

Nginx 的 SSL 模块安装

1、查看 nginx是否安装 http_ssl_module 模块

nginx -V

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第1张图片

如果出现 configure arguments: –with-http_ssl_module, 则已安装(下面的步骤可以跳过,进入 SSL 证书部署、nginx.conf 配置)。

否则按下述执行命令。

2、进入nginx源码包,重新执行下面命令,重新编译安装三部曲

image-20220825152430123

./configure --with-http_ssl_module
make 
make install

3、上述命令执行完以后,继续执行nginx -V

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第2张图片

nginx SSL模块安装成功!

SSL 证书部署

1、首先需要购买一个域名,可以直接去阿里云购买,购买完后域名备案(域名购买备案自行百度)。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第3张图片

我直接使用我之前购买备案过的域名,域名解析,点击解析按钮。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第4张图片

进入界面,点击添加记录。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第5张图片

配置解析记录:

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第6张图片

这里配置泛解析域名,主机记录填*,保证后缀为.likelong.icu的域名都能访问到配置的主机IP,比如www.likelong.icu、xxo.likelong.icu等。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第7张图片

域名解析完成!

2、申请阿里云的免费SSL证书,期限为1年

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第8张图片

进入阿里云控制台,搜索SSL,点击下面应用。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第9张图片

填写信息,购买免费证书。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第10张图片

购买完后,证书申请。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第11张图片

填写验证信息,绑定我们刚解析的域名www.likelong.icu

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第12张图片

点击验证。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第13张图片

证书签发后,点击下载。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第14张图片

选择nginx下载。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第15张图片

下载zip包里有两个文件,下面nginx配置需要用到。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第16张图片

直接将上述两个文件上传至nginx中conf文件夹如下。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第17张图片

nginx证书配置

nginx.conf添加如下配置:

server {
	listen               443 ssl;
	server_name          localhost;  # 接收所有访问443端口的请求
	ssl_certificate      8355107_www.likelong.icu.pem;
	ssl_certificate_key  8355107_www.likelong.icu.key;
}

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第18张图片

修改完后,重启nginx。nginx -s reload

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第19张图片

访问我们之前配置的域名www.likelong.icu,可以看到现在它是不安全的。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第20张图片

访问安全的域名https://www.likelong.icu,可以看到现在就是安全的。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第21张图片

至此nginx https配置完成!


由于http协议默认的端口是80,而https默认的端口是443,如果想让http的访问跳转到https的访问,可以做如下配置:

server {

	listen 80;
	server_name www.likelong.icu likelong.icu; # 换成自己的域名

	# 重定向,会显示跳转的地址server_name,如果访问的地址没有匹配会默认使用第一个,即www.likeong.icu
	return 301 https://$server_name$request_uri;	

}

配置如下:

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第22张图片

    server {
	 listen               443 ssl;
	 server_name          localhost;  # 接收所有访问443端口的请求
	 ssl_certificate      8355107_www.likelong.icu.pem;
	 ssl_certificate_key  8355107_www.likelong.icu.key;

         # 配置根目录以及默认页面
         location / {
            root   html;
            index  index.html index.htm;
        }

        # 配置默认错误页面
        error_page   500 502 503 504  /50x.html;
        # /50x.html文件所在位置
        location = /50x.html {
            root   html;
        }
   }

    server {
        listen       80;
        server_name www.likelong.icu likelong.icu; # 换成自己的域名

		# 重定向,会显示跳转的地址server_name,如果访问的地址没有匹配会默认使用第一个,即www.likeong.icu
        return 301 https://$server_name$request_uri;
    }

配置修改后,重启nginx。

直接访问www.likelong.icu,会跳转至安全访问地址。

【基础篇】Nginx安装 SSL模块、配置 HTTPS详细步骤_第23张图片

至此,此篇结束!

你可能感兴趣的:(nginx,nginx,ssl,https)