`
wangguorui89
  • 浏览: 318273 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

locatiton替换域名

阅读更多
昨天把端口号的问题解决了,今天又有一个问题,就是要让输入ip后直接进入到网站项目里面,而不是加个文件夹。找了半天,改了半天,搜索了半天都没有头绪。原来方法很简单,昨天就找到了相关资料的,只是 把/弄成了\就不行了,网上的很多资料都没有实际应用的(只是说明项目名称而没有给出了例子来)。就这么个小问题,我改了N次,重启了N次tomcat,搜索了N个关键字,最后还是到百度知道那里描述了下问题,又更加接近了答案,最后通过提示和在知道的相关问题里面得到了启发,再搜索tomcat appBase才找到真正有用的信息。

<Context path="" docBase="E:\Tomcat 5.0\webapps\webroot" debug="0"
privileged="true"/ >

<Context path="" docBase="ROOT" debug="0"/>
<Context path="/test" docBase="c:/jsp" debug="0"
reloadable="true"/> 

可能是你的conf/server.xml中添加了这样一句
<Context path="/" docBase="你说的那个项目路径" />
解决办法是把path="/"改成path="/aaa",
重启tomcat,http://localhost:8080/aaa就可以打开你那个项目
http://localhost:8080就可以打开默认的主页

以下我在是百度知道的提问和问题补充,希望对大家有用:

如何让tomcat输入http://localhost直接进入我指定项目的文件夹里面?而不在进入到tomcat欢迎界面那里。注:端口我已经改为80了。就是要把我webapps下面的项目test成为输入本机ip地址就可以访问到的(要绑定公司域名)。

问题补充:这个tomcat下面还有其它项目,我改了两个端口80和9000,现在都可以正常显示
我希望对外网绑定公司域名的用80端口,而内部的用9000端口。
也就是希望输入http://localhost直接到对外的test目录下
输入http://localhost:9000可以到root下面,即显示tomcat的欢迎界面,
输入http://localhost:9000/othertest进入其它项目
配置server.xml的我修改了很多次都不行,希望能给出具体的配置
终于找到办法了,原来是我context的路径弄错了路径间隔要用\不能用/的!
以下是修改的地方,给其它有同样问题的人参考吧
<Context path="" debug="0" docBase="E:\Tomcat 5.5\webapps\newplantest" reloadable="true" privileged="true">
</Context>
<Context path="/root" debug="0" docBase="E:\Tomcat 5.5\webapps\ROOT" reloadable="true" privileged="true">
</Context>

注:其实这里实现的还不是我最初想的输入http://localhost:9000可以到root下面,但这样已经达到我的目的就ok了,另外,如果不设置/root的话是进不了ROOT下面的,其它放在webapps下面的项目不用配置,直接加项目名就可以了。

注:这样配置还有一个问题是第二天才发现的--tomcat管理首页那里很多连接都进不去了,一看下面的路径都多加了个root,把前面的root去掉就可以了,马上想到修改ROOT下面的index.jsp的链接,根据经验,访问上级目录要在在链接前面加个../ 加完以后(共有6处)保存刷新,郁闷的是没有任何反应,重启tomcat再次打开新页面访问,一样没有任何变化,难道是缓存的原因?马上清除ie文件和历史记录,再次刷新还是一样,换个ip(这时已经映射到外网的ip了)也还是一样,这下有点明白是没有编译导致的了,到work目录下查找.class文件没有找到,于是呼有搜索了一阵,忙呼了一阵。说是删除class文件就会自动重新编译,但就是没有找到class文件,后来看到 \webapps\ROOT\WEB-INF\lib下面竟然只有一个jar包(catalina-root.jar)解压一看,里面确实有一个index_jsp.class 可以确定是没有重新编译的问题了。但要自己重新编译,压缩成jar包也太麻烦了吧,而且删除了那个jar包 直接报500的错误信息,根本不会自动生成。后来直接打开里面的class文件一看基本上跟页面一样,有些乱码,修改了下保存,再用WinRAR解开到那个目录下把修改后的拖过来覆盖,重启tomcat刷新,报了一堆的错。这下更加明白了class文件是不能直接编辑的。那么总要生成一个新的来吧,如何生成?在root下生成不了了,稍微一想放到网站的目录下不就可以了吗?于是把root下的index.jsp文件copy到自己目录下,访问自己目录后面加上index.jsp成功显示了修改过后的页面。到对应的目录下没有找到编译后的class,再次搜索,仍然无果。最后带着尝试的心理在work下面一个很深的目录下找到了

Tomcat 5.5\work\Catalina\localhost\_\org\apache\jsp 这个应该是临时编译的了。打开class文件一看链接内容正是修改过后的,于是copy这个文件用上面的方法直接覆盖原来的。刷新页面,点击链接,oye,终于成功了!



另外改两个端口的配置是

                   <Connector
port="80"               maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />
    <Connector
port="9000"               maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics