手把手教你Nginx 配置 HTTPS 完整过程

手把手教你Nginx 配置 HTTPS 完整过程

码农世界 2024-06-06 后端 92 次浏览 0个评论
cd nginx-1.18.0
./configure --prefix=/usr/local/nginx --with-http_ssl_module

我们只需要执行以上命令即可,由于我服务器上还有其他模块依赖

3.5 接下来执行命令编译

使用 make 命令编译(使用make install会重新安装nginx),此时当前目录会出现 objs 文件夹。用新的 nginx 文件覆盖当前的 nginx 文件。

手把手教你Nginx 配置 HTTPS 完整过程

3.6 命令拷贝复制
cp ./objs/nginx /usr/local/nginx/sbin/
3.7 再次查看安装的模块(configure arguments: --with-http_ssl_module说明ssl模块已安装)。
./nginx -V
nginx version: nginx/1.18.0
…
configure arguments: –with-http_ssl_module
4. ssl 证书部署

下载申请好的 ssl 证书文件压缩包到本地并解压(这里是用的 pem 与 key 文件,文件名可以更改)。

在 nginx 目录新建 cert 文件夹存放证书文件。

 cd /usr/local/nginx
 mkdir cert

将我们申请得这两个文件上传至服务器的 cert 目录里。

手把手教你Nginx 配置 HTTPS 完整过程

4.1. nginx.conf 配置

编辑 /usr/local/nginx/conf/nginx.conf 配置文件:

配置 https server。

注释掉之前的 http server 配置,新增 https server:

 server {
        listen       443 ssl;
        server_name somnus.test.com;
        ssl_certificate      ../cert/somnus.test.com.pem;
        ssl_certificate_key  ../cert/somnus.test.com.key;
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
	ssl_protocols TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
......
}
4.2 将 http 重定向 https
server {
    listen 80;
    server_name somnus.test.com;
    #将请求转成https
    rewrite ^(.*)$ https://$host$1 permanent;
}
4.5 重启 nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

如果 80 端口被占用,可以通过kill命令来进行结束进程:

5 查看端口使用
 netstat -lntp

执行看到以下结果就说明我们成功了

[root@iZi5u1azluu464tfbesf3aZ conf]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3322/nginx: master  
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2310/sshd                  
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      3322/nginx: master  
5.1 结束nginx端口进程
5.1 查看nginx 进程命令
ps aux | grep nginx

手把手教你Nginx 配置 HTTPS 完整过程

5.2 执行结束命令
kill -9 3322
5.1 重启 nginx :

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

手把手教你Nginx 配置 HTTPS 完整过程

手把手教你Nginx 配置 HTTPS 完整过程

手把手教你Nginx 配置 HTTPS 完整过程

手把手教你Nginx 配置 HTTPS 完整过程

手把手教你Nginx 配置 HTTPS 完整过程

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)

手把手教你Nginx 配置 HTTPS 完整过程

真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)

[外链图片转存中…(img-6LIwsI7o-1713067169662)]

转载请注明来自码农世界,本文标题:《手把手教你Nginx 配置 HTTPS 完整过程》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,92人围观)参与讨论

还没有评论,来说两句吧...

Top