一个意外把tomcat 当代理服务器用

事情还得从头说起

16号从东直门,把MYPM服务器从光环新网机房移回公司内。公司的网站,和MYPM的网站都要布暑在MYPM服务器上(之前公司网站和MYPM布署在不 同的机器上),在MYPM服务器上,原来就有nginx做代理服务器,移回公司后,我把公司网站移到MYPM所在服务器上,并在nginx上加上公司网站 的配置。通过www.jawaosft.com.cn和www.mypm.cc都 可以访问到公司网站和MYPM网站。问题是:访问公司网站时,首页有几个大图片,很慢,肯定是nginx,没优化好,当时时间紧急(不可能长时间内让公司 网站的访问受影响),研究了半小时,没解决nginx的配置。接下来,我停掉了nginx,把tomact 改成用80 端口并把缺省的应用改为指向公司网站(不这么改,通过www.jawasoft.com,访问到的是tomcat的首页),接下来,还有一个问题,访问www.mypm.cc时,也变成是访问公司网站了。当前就想,能不能让tomcat也来一个请求转发呢,接下来,我做了如下试验,把tomcat 当代理服服务器用 并成功了
     我把tomcat恢复成缺省应用是指向他的root,然后我在root 的web.xml中把欢迎页面(首页)改成index.jsp,然后打开index.jsp,改其内容为如下

<!doctype html public "-//w3c//dtd html 4.0 transitional//en" "http://www.w3.org/TR/REC-html40/strict.dtd">
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ page session="false" %>

<%
String url =request.getRequestURL().toString();

if(url.indexOf("mypm.cc")>=0){
    response.setContentType("text/html; charset=UTF-8");
    response.sendRedirect("http://www.mypm.cc/mypmhome/");
}else{
    response.setContentType("text/html; charset=UTF-8");
    response.sendRedirect("http://www.jawasoft.com.cn");
    }
%>

<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title><%= application.getServerInfo() %></title>
<body>

</body>
</html>  


当然这只是权宜之计,后来,我还是改成用nginx 做代理服务器
写这博文,只是分享一个tomcat原来可以这样用,通过这方法,也可以解决修改tomcat 缺省上下文的办法
相当于把root当成一个中转站了

原文地址:https://www.cnblogs.com/mypm/p/1939650.html