Kaw*_*awu 21 subdomain tomcat web-applications tomcat6
科目说的一切.我想要的是将每个子域映射到webapp,如:
http://root.domain.com:8080 -> http://domain.com:8080/
http://manager.domain.com:8080 -> http://domain.com:8080/manager
http://abc.domain.com:8080 -> http://domain.com:8080/abc
http://def.domain.com:8080 -> http://domain.com:8080/def
Run Code Online (Sandbox Code Playgroud)
在本地主机上这将是
http://root.localhost:8080 -> http://localhost:8080/
http://manager.localhost:8080 -> http://localhost:8080/manager
http://abc.localhost:8080 -> http://localhost:8080/abc
http://def.localhost:8080 -> http://localhost:8080/def
Run Code Online (Sandbox Code Playgroud)
理想情况下,我想使用端口80而不是8080,但这是另一个故事.我很乐意首先使用端口8080,以便URL末尾的路径消失.
注意,箭头不是重定向,但如果我按原样离开Tomcat,我会输入.
我知道Tomcat docs页面http://tomcat.apache.org/tomcat-6.0-doc/virtual-hosting-howto.html.我已多次阅读,但没有取得多大进展.我编辑了etc/hosts以添加127.0.0.1 bbstats.localhost.然后我补充道
<Host name="bbstats.localhost" appBase="webapps/bbstats"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
Run Code Online (Sandbox Code Playgroud)
到conf目录中的Tomcat的server.xml.我的webapp的context.xml是:
<Context path="/bbstats" docBase="bbstats" debug="5" reloadable="true" crossContext="true">
</Context>
Run Code Online (Sandbox Code Playgroud)
重启Tomcat.通过Ant重新部署.进入时
HTTP://bbstats.localhost:8080 /
进入浏览器,我得到一个空白屏幕.
当使用appBase ="webapps"而不是appBase ="webapps/bbstats"时,我会看到Tomcat的root应用程序.后一种行为是预期的.但是如何让bbstats.localhost:8080转到bbstats webapp而没有URL中的尾随/ bbstats?
Jos*_*seK 28
您可以尝试<Host>通过给出将每个Web应用程序嵌套在server.xml中作为根webapp path="".我自己没试过.
<Host name="bbstats.localhost" appBase="webapps">
<Context path="" docBase="/bbstats/"/>
</Host>
<Host name="tomcatstuff.localhost" appBase="webapps">
<Context path="" docBase="/tomcatstuff/"/>
</Host>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22797 次 |
| 最近记录: |