Nginx配置多个二级域名和CA证书的详细教程

  • Post author:
  • Post category:其他




一、前情提要

由于申请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证书的内容,以上方法亲测有效,希望能给大家一个参考。

创作不易,关注💖、点赞👍、收藏🎉就是对作者最大的鼓励👏,欢迎在下方评论留言🧐



版权声明:本文为qq_34383510原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。