通过反向代理实现不同域名访问同一IP的不同端口
基于同一IP的不同端口访问不同的网站(可以通过域名去访问)
ip+port1 -》 对应一个域名
ip+port2 -》 对应一个域名
使用域名1访问到ip+port1对应的内容
使用域名2访问到ip+port2对应的内容
通过反向代理实现不同域名对应不同端口
服务端配置
环境:Redhat 8.0
主程序:httpd
首先查看本机IP地址
[root@KATANA extra]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.98.130 netmask 255.255.255.0 broadcast 192.168.98.255inet6 fe80::d991:9d25:2c80:9272 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c3:cc:5a txqueuelen 1000 (Ethernet)RX packets 16011 bytes 1485312 (1.4 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 14058 bytes 5176000 (4.9 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
可以看到本机IP是192.168.98.130
在/etc/httpd/conf.d/目录下创建两个虚拟主机监听9090和9091端口
<Directory "/www/port">AllowOverride NoneRequire all granted
</Directory>Listen 192.168.98.130:9090
Listen 192.168.98.130:9091<VirtualHost 192.168.98.130:9090>DocumentRoot "/www/port/9090"DirectoryIndex index.html
</VirtualHost><VirtualHost 192.168.98.130:9091>DocumentRoot "/www/port/9091"DirectoryIndex index.html
</VirtualHost>
启动httpd服务,测试虚拟主机
![](/assets/blank.gif)
![](/assets/blank.gif)
配置httpd反向代理,创建反向代理文件
<VirtualHost 192.168.98.130>#代理域名 ServerName www.port9090.com#反向代理不需要开启ProxyRequests ProxyRequests Off Order deny,allow from all#接受来自任何地方的请求 Allow from all ProxyPass / http://192.168.98.130:9090
</VirtualHost><VirtualHost 192.168.98.130>ServerName www.port9091.comProxyRequests Off Order deny,allow frome allProxyPass / http://192.168.98.130:9091
</VirtualHost>
在httpd的配置文件中开启反向代理模块导入配置文件
在/etc/httpd/conf/httpd.conf文件末尾追加
#在apache开启时加载代理模块
LoadModule proxy_module modules/mod_proxy.so
#在apache开启时加载代理http模块
LoadModule proxy_http_module modules/mod_proxy_http.so
#导入conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-vhosts.conf
重启httpd服务
[root@KATANA conf]# systemctl restart httpd
[root@KATANA conf]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)Drop-In: /usr/lib/systemd/system/httpd.service.d└─php-fpm.confActive: active (running) since Fri 2023-02-03 23:48:54 CST; 9s ago
客户端配置
环境:Windows 10
主程序:Edge浏览器
在Windows搜索栏中输入cmd,选择以管理员身份运行
![](/assets/blank.gif)
以记事本方式打开hosts文件
C:\WINDOWS\system32>notepad drivers/etc/hosts
在hosts文件尾部追加域名解析(记得保存)
192.168.98.130 www.port9090.com
192.168.98.130 www.port9091.com
结果测试
启动Edge浏览器,在地址栏输入域名查看对应的页面
port9090所对应的9090端口
![](/assets/blank.gif)
port9091对应的9091端口
![](/assets/blank.gif)
测试成功
通过反向代理实现不同域名访问同一IP的不同端口相关推荐
- 在一台win10系统的电脑里安装虚拟机运行CentOS7并实现nginx反向代理从而用域名访问本机的微服务项目
在虚拟机里的CentOS7安装配置nginx,之前需要一些依赖库作为编译安装的条件,具体作用和命令详情跳转我之前的博客. 安装并使用VMware-workstation-full-15.5.0安装Ce ...
- 通过备案的域名访问,不需要添加端口号(nginx反向代理,直接域名访问)
注意:前提是公网域名通过备案和域名解析 1.安装nginx yum install -y nginx 2.找到安装nginx.conf文件 server {listen 80;listen [::]: ...
- Nginx反向代理,通过域名直接访问指定的端口,比如8080
Nginx反向代理,通过域名直接访问指定的端口,比如8080 今天写微信公众号开发网络授权的时候,通过域名加接口url的方式,始终访问不到指定的接口,最后想了很久,发现是Nginx反向代理没有配置! ...
- Nginx反向代理多个域名
简介 由于公司内网有多台服务器的http服务要映射到公司外网静态IP,如果用路由的端口映射来做,就只能一台内网服务器的80端口映射到外网80端口,其他服务器的80端口只能映射到外网的非80端口.非80 ...
- 域名访问和ip访问区别
域名访问和ip访问区别 ip访问对应某一台确定的服务器: 域名访问相当于在ip访问的基础上,做了一个反向代理的中间功能.例如:百度,很多人会同时使用,如果使用的是同一台服务器的话,服务器估计会扛不住, ...
- 群晖NAS公网访问(IP+DNSPOD+桥接+端口转发+DDNS+WebDAV)
群晖NAS公网访问 (IP+DNSPOD+桥接+端口转发+DDNS+WebDAV) 文章更新一版,结果审核不过,只能转载了: https://www.cnblogs.com/nomil9/articl ...
- nginx反向代理实现二级域名转一级域名
需求场景: 有两个大项目交互必须在一级域名下,每个项目有多个前端,之前采用二级或三级域名的方式导致域名过多不好维护,故由project1.service1.city.com.project1.serv ...
- nginx反向代理地址是域名时请求不通的情况
使用nginx的反向代理,是解决跨域的一个重要方法.在nginx的配置文件中,我们通常可以看到这么一段: proxy_set_header Host $host; proxy_set_header X ...
- nginx 反向代理配置二级域名正确姿势!!!
1. 先解释下什么是反向代理? 反向代理是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代 ...
最新文章
- uniapp点击图片放大_手机做图片放大镜效果很难?看这里,分分钟就能学会!
- java迭代器删除两个_两个迭代器的故事
- 用友U9执行JS代码。
- C++语言中multiset的相关用法及扩展
- vue ----组件数据共享
- 获取页面元素的滚动位置,兼容各浏览器
- checkbox 实例
- php 微信公众 验证失败,微信公众平台token验证失败
- Dubbo性能调优参数及原理
- oracle 恢复dmp数据,Oracle数据库使用DMP文件恢复数据
- Java牛客项目课_仿牛客网讨论区_第七章
- 元气骑士如何获得机器人成就皮肤_元气骑士成就系统攻略 成就获取方法一览...
- python背单词游戏,python背单词小程序
- LeetCode 古生物血缘远近判定 ( dp )
- iOS 14.5正式版如约而至 支持通过Apple Watch解锁iPhone
- Linux-命令 返回上一级目录
- 掌财社寒山:垄断阴影未除,失去左晖的贝壳还能走多远?
- 大连市快轨3号线续建工程试通车
- microbit python编译器_micro:bit MakeCode 2020 (V3.0) 测试版功能介绍
- 【Android 获取本地视频+视频剪裁+视频录制】
热门文章
- 微信小程序报错:expect end-tag `input`., near `div`
- 微信小程序 GitHub Trending Hub 上线 84 天了~
- 15 本畅销书,不限于技术
- markdown转义_Markdown语法示例
- 基于RT-Thread操作系统的 基础四轮组智能车设计与实践
- ChatGPT 免费在线体验
- 唯创知音WTV系列语音芯片再启程,传承经典
- MySQL数据操作与查询笔记 • 【目录】
- 工信部:已启动传统能源车停产停售时间表,“双积分”近日实施
- 批量修改文件名SaveFileUtil