Apache2.4+Tomcat9.0配置反向代理

所需工具,能看懂标题的人就知道要什么工具(Apache2.4+Tomcat)

运行Tomcat需要jdk,学java的小伙伴都知道吧。

昨天学的知识。现在总结一下并把配置过程发出来。当个记录以后自己忘了可以看。

在学校大佬讲的太乱了,一直在debug。好多人都睡着了,大佬牛逼是牛逼,但是对于我们这些新手他一直在debug我们实在看不懂。

最后大佬弄出来了,给我们总结了一下。他讲的过程我也没怎么听。跟不上节奏,记不住。。。

隔天早上就开始上网找资料去配置,发现找的资料没一个能配置成功的,乱七八糟。有些配置后apache都运行不了了。(写文章的人能不能负点责,自己测试过没问题后再发出来)

okok,进入主题。

先来了解一下什么是反向代理?

当一个代理服务器能够代理外部网络上的主机,访问内部网络时,这种代理服务的方式称为反向代理服务

 所谓的反向代理就是你访问的目标不是直接访问的,中间是有一个代理给你转发的。

那么它的作用是什么?

比如我们现在要访问的站点端口是8080并不是默认的80,而又不想手动在后面输入自己特定的端口8080。此时就可以用apache的反向代理映射到8080端口

而此时我们访问的127.0.0.1 其实就是127.0.0.1:8080

这是一张简单的流程图。看图就很容理解了(虽然画的很丑)。

现在就开始配置。

--------------------------------------------------------------------------------------

首先tomcat发布一个项目,但我们知道tomcat发布后访问的地址是localhost:8080或127.0.0.1:8080

为了逼格高点。我们修改一下本机的host和tomcat的server.xml配置文件。

 host路径:C:WindowsSystem32driversetc

server.xml路径:Z:apache-tomcat-9.0.0.M20conf

如果是最高权限管理员还是没法修改就把host文件复制到桌面,修改完后再覆盖掉原来的host就可以了。

hsot添加:

127.0.0.1 baidu.com

不解释那么多了。注意访问的时候不要加www

然后再修改server.xml文件添加一个元素就可以了

server.xm添加:

<Host name="baidu.com" autoDeploy="true" unpackWARs="true" appBase="e:\baidu.com"> </Host>

在你的E盘创建有baidu.com文件夹把项目放里面,启动tomcat就可以用baidu.com访问了。

--------------------------------------------------------------------------------------

这里才是配置apache的

其实用apache做反向代理的话只要稍微修改一下就好了,并不用像网上的一样设置一大堆乱七八糟的。

 在网上看的配置都出错,我就直接去apache官网看了一下。找到一段代码复制过去就配置成功了。

<VirtualHost baidu.com:80>
ServerAdmin webmaster@host.example.com
DocumentRoot "e:\baidu.com"
ServerName baidu.com
ErrorLog "logs/baidu.com"
TransferLog "logs/baidu.com"
ProxyPreserveHost On
ProxyPass / http://baidu.com:8080/
ProxyPassReverse / http://baidu.com:8080/
</VirtualHost>

这是我用baidu.com这个例子改的,如果你的本地域名不是baidu.com换成你自己本地域名就好了

那么这段代码要添加到哪里呢,放到httpd-vhosts.conf

httpd-vhosts.conf路径:Z:Apache24confextra

添加到末尾就行了。

配置到这里就差修改一个配置文件了:httpd.conf

httpd.conf路径:Z:Apache24conf

找到这三句代码,把注释去掉就ok了

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
Include conf/extra/httpd-vhosts.conf

--------------------------------------------------------------------------------------

此时运行你的apache用baidu.com访问是不是项目出来了,也不用在后面输入8080端口了。

按步骤来肯定是可以成功的。

这里提醒一下,直接访问baidu.com后面不加任何项目名的话在baidu.com目录下新建一个ROOT文件夹放一个名为index的页面进去就会自动找这个页面显示

最后看一下成功的效果是什么样的

想了解更多的话去官方文档看吧。

2.4官网链接:鼠标点一下带你飞过去

路漫漫其修远兮,吾将上下而求索
原文地址:https://www.cnblogs.com/-brl/p/7463875.html