Nginx使用免费的SSL证书访问自己的域名 - Go语言中文社区

Nginx使用免费的SSL证书访问自己的域名


注意:阿里云版本

具体条件:已有阿里的服务器和域名

停止已经运行的nginx服务

./nginx -s stop

申请免费的域名

前往自己的 阿里云中的控制台,找到 SLL证书(应用安全) 这个导航在这里插入图片描述
在左侧 数字证书管理服务 中点击SSL证书
在这里插入图片描述
点击 免费证书 后选择 立即购买
在这里插入图片描述
有20个可 免费 供我们使用
在这里插入图片描述

配置证书

点击 创建证书 选择 证书申请 配置绑定相应的域名信息等其它相关信息
在这里插入图片描述

配置成功下载文件

在这里插入图片描述

选择对应的 nginx 下载,并且打开对应的 帮助手册

常见问题

1. 未找到SSL模块

# nginx: [emerg] the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx

解决方法:
这表示,你已经安装的Nginx服务未装SSL模块,你需要去解压的源文件中重新安装一下SSL模块,然后替换掉Nginx的启动服务即可。

找到解压的文件包

进入根目录

cd /

查找nginx相关的目录

find -name nginx*

在这里插入图片描述

红框中表示的是我们之前解压后的nginx文件,进入这个文件,看见configure执行文件
在这里插入图片描述

安装模块

执行命令

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make

若执行make出现错误可能是缺少某些依赖,安装以下内容后重新执行make

yum -y install gcc-c++ 
yum -y install pcre pcre-devel 
yum -y install zlib zlib-devel 
yum -y install openssl openssl-devel

编译后会生成objs文件

在这里插入图片描述

替换原nginx的可执行文件

进入文件夹

cd objs/

替换之前的nginx可执行文件

cp /root/nginx/objs/nginx /usr/local/nginx/sbin

重新启动服务

./nginx -s reload

2. 重启时遇到问题

nginx: [error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory)

解决办法

使用nginx -c的参数指定nginx.conf文件的位置

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_33806001/article/details/126523391
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2023-01-01 20:35:30
  • 阅读 ( 757 )
  • 分类:Go Web框架

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢