如何在没有Apache Server的情况下配置Apache tomcat来处理ProxyPass和ProxyPassReverse

时间:2017-07-25 05:43:31

标签: apache tomcat

我正在使用Apache Tomcat来部署应用程序。应用程序需要配置ProxyPass和ProxyPassReverse,我已阅读文档,说明ProxyPass由Apache Server提供服务。如何使用tomcat服务和配置相同的服务器而不使用Apache服务器

我已经阅读了以下在Apache服务器的httpd.conf文件中配置的codeis,用于提供proxyPass和ProxyPassreverse:

NameVirtualHost *:80
<VirtualHost *:80>
     ServerName 127.0.0.1
     DocumentRoot /var/www

     ProxyRequests Off
     ProxyPreserveHost On

     ProxyPass /static/ !
     ProxyPass / ajp://localhost:8009/
     ProxyPassReverse / ajp://localhost:8009/

.
.
.
     Alias /static/ "/apache/www/"

</VirtualHost>

1 个答案:

答案 0 :(得分:1)

这些directives are used如果你在tomcat的“前面”有一个反向代理。在这种情况下,如果反向代理是Apache httpd。指令是必需的,因为tomcat可能不知道原始请求的目标,并且httpd可以从tomcat认为请求应该看起来像是“翻译”到用户的浏览器需要的内容。

如果游戏中没有反向代理,Tomcat会看到原始请求数据,所有这些指令都可以省略。

如果您使用的是其他反向代理(例如nginx),则需要找到使您选择的反向代理相互适应的等效指令。

另一个警告:如果您正在处理Tomcat上的所有内容,请确保您不是以root身份运行,只是为了绑定到端口80或443.您不能以root身份运行tomcat! (如果你不这样做:好。我已经把它放在每个读它的人身上。不能经常重复)