应用背景:在同一服务器网页上,通过不同目录访问内网的不同服务器。

开启相应模块:虚拟主机和代理模块

为了方便操作,最好启用虚拟主机来配置:

# 在httpd.conf中取消注释以下代码LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so

配置虚拟主机和反向代理

在httpd_vhosts.conf中编辑:

<VirtualHost *:80>ProxyPass / http://127.0.0.1:8888/ProxyPassReverse / http://127.0.0.1:8888/
</VirtualHost>

上面是最简单的虚拟主机反向代理:访问这个服务器的80端口时,会自动跳转到该服务器上8888端口的服务页面。但是当需要在这个端口的网页上,既能访问网页,又能访问其他端口的服务,就需要通过二级目录的反向代理,在这个网页的地址中访问服务。

配置二级目录反向代理

二级目录/service反向代理至http://127.0.0.1:8888/配置如下:

<VirtualHost *:80>ProxyPass /service/ http://127.0.0.1:8888/ProxyPassReverse /service/ http://127.0.0.1:8888/
</VirtualHost>

但是这样配置会出现一个问题:代理的服务下若需要加载css或js等文件,即使用了相对路径的文件,会重定向至该网页的根目录下,而不是/service。对于这样的服务,如果服务的主要内容不是在该服务的根目录下(http://127.0.0.1:8888/),而是其子目录(http://127.0.0.1:8888/service/),就可以通过以下配置解决css文件加载错误的问题:

<VirtualHost *:80>ProxyPass /service http://127.0.0.1:8888/service/ProxyPassReverse /service http://127.0.0.1:8888/service/
</VirtualHost>

但是这样配置的条件是两个二级目录的名称必须是一致的,这是因为这里利用了一个代理路径的错误:将服务的service路径映射到/service会导致服务的 service路径 丢失,例如 service/index.html映射到网页中的相对路径会变成 /index.html ,但是由于映射到/service这个二级目录,会让这个index.html的显示路径为*/service/index.html。具体的原因未知,但是这样的配置是实际可行的,可以解决css文件路径错误的问题。

Apache:二级目录反向代理 – 实现不同端口服务在同一网站的访问相关推荐

  1. Nginx配置二级目录反向代理本机不同端口

    前序 最近在家里的服务器上装了一大堆的服务器软件,大多数都需要Web网站访问的,比如:Gitlab.Apache.Jenkins等等.然而又因为是不同的应用,需要占用不同的端口,每次访问起来都需要在I ...

  2. 什么是泛目录?二级目录反向代理怎么做?

    现在很多人都想做泛目录排名,关于很多新手而言,会觉得泛目录排名是一个高深的技能,事实上只要一个程序就能够完成泛目录排名,那么什么是泛目录?这个问题分红两个部分: 1:什么是二级目录和泛目录? 2:这儿 ...

  3. Apache配置一级反向代理和二级反向代理实现目录网站管理

    一级反向代理:就是从A站配置到B服务器站 二级反向代理:就是在B站服务器基础上再分到C服务器站 1.设置httpd.conf 打开Apache24/conf文件夹下的httpd.conf设置文件,找到 ...

  4. 泛目录程序如何设置目录反向代理(Nginx反向代理泛目录、目录、整站方法 nginx反向代理配置)

    这里以宝塔面板为例,图形界面很友好,适合小白. 我自己的博客也有这篇原创文章,购买泛目录和技术参考请前往此贴: https://www.waytomilky.com/archives/738.html ...

  5. nginx 反向代理时丢失端口的解决方案(转)

    nginx 反向代理时丢失端口的解决方案(转) 参考文章: (1)nginx 反向代理时丢失端口的解决方案(转) (2)https://www.cnblogs.com/shenyixin/p/1136 ...

  6. nginx反向代理非80端口/nginx反代非80端口

    首先声明,非专业研究nginx的,可以直接复制我的代码到 nginx 配置中再根据个人需求更改 非80端口通过80端口反向代理到非80端口应用,添加下面代码到nginx配置文件最后 server_na ...

  7. 反向代理-- WEB服务的加速器[转]

    反向代理-- WEB服务的加速器[转] Posted on 2009-05-17 16:48 chen eric 阅读(230) 评论(0)   编辑 收藏 昨天j.L问我http cache怎么设置 ...

  8. nginx配置二级目录,反向代理不同ip+端口

    场景描述: 通过二级目录(虚拟目录,应用程序)的方式访问同一ip+端口的不同应用,例如location是用户使用页面,location/admin/是管理页面,location部署在192.168.1 ...

  9. nginx使用二级路径反向代理不同IP和端口

    场景描述: 通过二级目录(虚拟目录,应用程序)的方式访问同一ip+端口的不同应用,例如location是用户使用页面,location/admin/是管理页面,location部署在192.168.1 ...

最新文章

  1. NC:中科院动物所王关红等综述基因技术防控蚊媒疾病
  2. 那些喜欢诉苦的人,他们大概会一直苦下去
  3. double 数组_寻找两个有序数组的中位数
  4. xcode中用pods管理第三方库转
  5. 服务器时间维护制度,网络设备及服务器日常维护管理制度
  6. 手把手教你用好LINQ to SQL(1)
  7. Eigen的基础使用-C++
  8. ubuntu镜像添加jdk_docker基础镜像ubuntu添加jdk1.8
  9. 【游戏辅助】利用C语言编写《植物大战僵尸》修改阳光值代码
  10. U盘之家工具包 V1.4
  11. [Java] Appfuse tapestry 小记
  12. python dlib caffe人脸相似度_人脸检测学习笔记(数据集-DLIB人脸检测原理-DLIBOpenCV人脸检测方法及对比)...
  13. python足球数据分析_Python 进行 NBA 比赛数据分析
  14. Unity 抗锯齿方案梳理
  15. 添加引用提示:未能找到引用的组件“XXX”。未能加载类型库。加载类型库/DLL 时出错。...
  16. Latex如何写参考文献及修改顺序
  17. win7系统服务器文档,win7系统服务器
  18. kanzi案例Coin
  19. 为什么苹果的官网看上去这么美
  20. 中国智能手机市场大幅衰退,仅华为vivo取得增长

热门文章

  1. 是面试官放水,还是公司实在是太缺人?这都没挂,腾讯原来这么容易进···
  2. HTML5期末大作业:汽车网页设计——保时捷6页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计
  3. 全国计算机考试准考证模板
  4. 怎么把Excel文档翻译成中文?Excel文档翻译方法介绍
  5. 语音处理/语音识别基础(四)- 语音文件读取与播放
  6. 大连理工学php,大连理工大学教务处(大连理工大学国内交换生)
  7. 哈工大计算机网络第五章——数据链路层与局域网复习
  8. Centos镜像地址列表(全)
  9. 中国非处方药(OTC)市场营销策略及十四五发展规划战略报告2021-2027年
  10. 百度成为“中国探月航天工程人工智能全球战略合作伙伴”