前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx反向代理实现多个域名指向同一个ip的不同网站解决方法

Nginx反向代理实现多个域名指向同一个ip的不同网站解决方法

作者头像
星哥玩云
发布2022-07-24 11:47:58
7.9K0
发布2022-07-24 11:47:58
举报
文章被收录于专栏:开源部署

一个服务器需要挂载多个项目【重点是都能通过域名访问】

实现原理:

1.当前市面上看到的一些服务器,开放的端口一般都要求为 '80' 端口 所以80端口成了商用端口

2.域名的绑定是绑定一个一般是绑定你的服务器ip地址

3.使用服务器的80端口拦截访问的域名是什么跳转至服务器的其他

举例

  • 只有一台服务器,一个IP;
  • 服务器上有多个应用运行在不同的端口。例如:
  • 127.0.0.1:4000 运行着一个博客应用
  • 127.0.0.1:3009 运行着一个微信公众号机器人的后台希望不同的域名,都解析到该IP的80端口,但是转发到不同的端口去:
  • www.baidu.com 能访问到127.0.0.1:4000的应用
  • 新增一个Ai.baidu.com 能访问到127.0.0.1:3009的微信后台(微信要求绑定服务器时绑定的是80端口)

这里给出 Nginx 的几个命令 更改之后需要重启你的Nginx 反向代理!

(1)vim编辑nginx的nginx.conf(反向代理配置文件)

sudo vi /etc/nginx/nginx.conf

(2)使用下面命令安装nginx  yum install nginx

(3)启动Nginx  service nginx start 或 systemctl start nginx.service  (4)重启nginx  service nginx restart

具体步骤

1. 在Nginx的conf中添加upstream

指向第二个应用的本机地址。   upstream baidu{       server 127.0.0.1:3009;     }

附上原有的第一个应用的upstream。     upstream Ai.baidu{       server 127.0.0.1:3009;     }

2. 在Nginx的conf中添加二级域名主机头80端口的侦听

PS:本例中,要新添加的解析二级域Ai.baidu.com

端口号为80  server_name 精确匹配到二级域名(本例中为Ai.baidu.com。其他规则或www也可以,只要与域名商处解析行为一致即可)  再给conf添加如下1个server:             server {                                    listen      80;                                    server_name www.baidu.com;                                    location / {                                                proxy_pass http://baidu;                                    }                                    error_page  500 502 503 504  /50x.html;                                  location = /50x.html {                                                      root  html;                                    }                         }

            server {                                    listen      80;                                    server_name Ai.baidu.com;                                    location / {                                            proxy_pass http://Ai.baidu;                                    }                                    error_page  500 502 503 504  /50x.html;                                  location = /50x.html {                                                  root  html;                                      }                         }

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档