一、修改端口
tomcat默认监听端口是8080,我们如果想不带端口的直接访问项目,就必须监听80 端口;
service.xml 以下代码段
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
修改为
-
<Connector port="80" protocol="HTTP/1.1"
-
connectionTimeout= "20000"
-
redirectPort= "8443" />
二、配置<Host/>
第一是 <Engine defaultHost="localhost" name="Catalina"> 把defaultHost的值修改成你的域名 <Engine defaultHost="www.qiangzigz.pw" name="Catalina">
第二是 <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
把name的值修改成你的域名
<Host appBase="webapps" autoDeploy="true" name="www.qiangzigz.pw" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
最后再加上具体的项目指向
在Host下面加上 <Context docBase="testPath" path="" reloadable="true"/></Host>
这个testPro就是tomcat中的项目名称
保存service.xml文件,重新启动服务,如果你的域名和ip绑定好的话就可以直接用域名访问了
重启服务器之后确实可以域名访问项目了,但是当去掉前面www.的时候,却无法访问。
既然访问不到意思就是没有配置这个域名,就又加了一个<host/>标签,其他的都没变,只把有域名的地方去掉前面的www. 然后重启服务器,这样按照理论来说是成功的,可是结果却是出乎所料。
访问不了,看日志下面既然还报了内存溢出,这就没办法理解了。
后来翻墙查资料,终于解决了。原来<host/>下还有一个别名标签<Alias></Alias>,修改后的代码
-
<Host name="www.qiangzigz.pw" appBase="webapps/qxw"
-
unpackWARs= "true" autoDeploy= "true">
-
-
<Alias>qiangzigz.pw </Alias>
-
<Context path="" docBase="C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\qxw" debug="0" reloadable="true" > </Context>
-
-
-
</Host>