一、前情提要
由于申请80端口需要备案(其实是因为穷🤣),在新部署项目是需要搞个域名,于是想到搞个二级域名用以前***申请过的80端口的服务器***上的nginx来跳转
二、域名配置
进入正题,要配置域名,首先需要添加域名解析,这里以阿里云为例
1.解析域名
首先登录阿里云 -> 云解析DNS/域名解析/解析设置,添加二级域名和服务器IP(nginx所在服务器),如下图:
2.申请CA证书
点击数字证书管理服务,申请免费SSL证书(🤣),填写完申请信息通过后,证书状态就会变为已签发,然后点击下载,就行了
3.nginx配置
修改nginx.conf文件(这里只贴出配置二级域名的部分内容)
server {
listen 80;
server_name localhost xxx.xxx.com;
... #略
}
#二级域名
server{
listen 80;
server_name test.xxx.com;
location ~/(test|ceshi) {
#跳转的目标服务器
proxy_pass http://172.169.11.25:7000;
proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
}
}
#二级域名
server{
listen 80;
server_name blog.xxx.com;
location ~/(group|blog) {
#跳转的目标服务器
proxy_pass http://198.169.11.21:8080;
proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
}
}
执行命令
./nginx -s reload
,重新加载配置文件
nginx配置二级域名就已经完成了🎈,直接通过
http://test.xxx.com/test
、
http://blog.xxx.com/blog
能跳转到相应的服务,但是现在是不支持https的,要配置https就需要用到上面下载的证书啦
3.HTTPS配置
将下载的证书(xxx_blog.xxx.com.pem和xxx_blog.xxx.com.key)放在nignx目录(如果nginx是默认安装的话,nginx在/usr/local/nginx下)下,我这里新建一个文件夹放证书
修改配置文件如下
#二级域名
server{
listen 80;
listen 443 ssl;
server_name blog.xxx.com;
ssl_certificate cert/xxx_blog.xxx.com.pem;
ssl_certificate_key cert/xxx_blog.xxx.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location ~/(group|blog) {
#跳转的目标服务器
proxy_pass http://198.169.11.21:8080;
proxy_next_upstream http_500 http_502 http_503 error timeout invalid_header;
proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
}
}
重启nginx,通过https访问测试成功!
总结
以上就是今天要讲的nginx配置多个二级域名和多个CA证书的内容,以上方法亲测有效,希望能给大家一个参考。
创作不易,关注💖、点赞👍、收藏🎉就是对作者最大的鼓励👏,欢迎在下方评论留言🧐