我在Tomcat上运行了一个小的本地(内部到组织)浏览器应用程序。我继承了在PHP服务器下运行的应用程序(也仅供内部组织使用),我被要求在同一个盒子上运行。我认为最好的办法是让Tomcat和PHP在Apache Web Server下运行。最初我认为这是必不可少的,尽管我现在只要我让他们用不同的端口运行这是不必要的(?)。
我使用proxy_http_module让我的Tomcat应用程序通过Apache运行。我想知道是否有一种简单的方法可以通过tomcat停止直接访问应用程序?
因此,例如在Tomcat中,应用程序设置为
运行http://localserver:1234/superapp
使用虚拟主机配置apache允许以
进行访问大概这意味着如果我现在进入http://localserver:1234/superapp我绕过apache web服务器?假设(粗体假设)我没有误解机制,是否有一种简单的方法可以通过tomcat(http://localserver:1234/superapp)直接停止访问。
感谢。
答案 0 :(得分:1)
您可以考虑使用proxy_ajp而不是proxy_http。但您也可以使用RemoteAddrValve根据IP地址定义限制:
<Engine name="Catalina" defaultHost="localhost">
...
...
...
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.0\.0\.1"/>
...
</Engine>