未加星标

Tomcat 6 绑定域名和根域名

字体大小 | |
[系统(linux) 所属分类 系统(linux) | 发布者 店小二05 | 时间 20160901 | 作者 红领巾 ] 0人收藏点击收藏
Tomcat 6 绑定域名和根域名

通常情况下,大家都会使用 Ngix + Tomcat 或者Apache + Tomcat的模式来构建网站系统、绑定域名,这也是比较科学和实用的方式,这两种方式笔者会在后续补充上来。这次主要讲的是单独使用Tomcat6来部署jsp网站(请不要吐槽技术low,因为我们网站目前没有大的访问量,且节省时间)。

ps:本文的前提条件是你的www域名和顶级域名都可以解析到你的服务器了,本文以域名www.linuxidc.com作为域名示例,虚构的域名。。。

步骤一:将项目发布到Tomcat服务器上,且指定端口为80端口

可以将项目war包放到服务器的任意位置解压例如解压到/appuser/web/linuxidc(后续会使用到),然后打开Tomcat目录下的conf目录中的server.xml文件,找到<Connnector port="8080"...>的配置项,改变端口为80端口,例:

<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />

ps:其中URIEncoding是用来设置tomcat服务器请求路径的编码设置,防止中文乱码

步骤二:指定Tomcat对应的域名

接着编辑server.xml,找到<Host..>的配置项,指定Host中的name属性为你的域名例如www.codesec.net,接着在Host下添加子标签

<Context path="" docBase="/appuser/web/linuxidc" allowLinking="true"></Context>

最后的Host标签中的内容是这样的:

<Host name="www.codesec.net" appBase="webapps"
unpackWARs="true" autoDeploy="true">
...省略的默认配置
<Alias>codesec.net</Alias><!-- 绑定顶级域名时要配置的,提前放出来 -->
<Context path="" docBase="/appuser/web/linuxidc" allowLinking="true"></Context>
</Host>

其中docBase就是我们服务器上解压后的war包目录,这样配置完成后启动Tomcat没有错误的话,访问www.codesec.net域名就可以了,网站都可以正常显示。

但当你访问codesec.net的时候会发现网站无法解析,也就是你的根域名还没有被解析。

步骤三:绑定Tomcat的顶级域名,这里需要使用到tomcat的urlrewrite组件,是用来做tomcat的伪静态组件

从SEO(搜索引擎优化)的角度来讲根域名通常是需要重定向(http状态码301)到www域名的,这样更利于搜索引擎的收录和提升网站权重。因此将顶级域名重定向到www域名是非常必要的。

那么这里我们使用urlrewrite组件来做这个事情。首先从urlrewrite官网下载urlrewritefilter-4.0.3.jar包,版本随意....,加入到项目中,然后在WEB-INF下添加urlrewrite组件对应的配置文件urlrewrite.xml,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN"
"http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd">
<!--
Configuration file for UrlRewriteFilter
http://www.tuckey.org/urlrewrite/
-->
<urlrewrite>
<!-- 关键配置,域名为www.codesec.net -->
<rule>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <name>seo redirect</name>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <condition name="host" operator="notequal">^www.codesec.net</condition>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <from>^/(.*)</from>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; <to type="permanent-redirect" last="true">http://www.codesec.net/$1</to>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; </rule>
&nbsp;&nbsp;&nbsp; <rule>
<rule>
<note>
The rule means that requests to /test/status/ will be redirected to /rewrite-status
the url will be rewritten.
</note>
<from>/test/status/</from>
<to type="redirect">%{context-path}/rewrite-status</to>
</rule>

<outbound-rule>
<note>
The outbound-rule specifies that when response.encodeURL is called (if you are using JSTL c:url)
the url /rewrite-status will be rewritten to /test/status/.
The above rule and this outbound-rule means that end users should never see the
url /rewrite-status only /test/status/ both in thier location bar and in hyperlinks
in your pages.
</note>
<from>/rewrite-status</from>
<to>/test/status/</to>
</outbound-rule>

</urlrewrite>

关键的地方是名字为seo redirect的rule规则。接着需要在WEB-INF\web.xml个添加urlrewrite的过滤器,作用是所有请求通过urlrewrite过滤器进行过滤,添加配置如下:

<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

最后在Tomcat的server.xml配置文件中的Host便签下再添加一个子标签<Alias>codesec.net</Alias>即可(在步骤二中已经添加好了),所有配置完成,重启Tomcat服务器,访问顶级域名codesec.net发现已经可以访问了,且被重定向到了www.codesec.net,

打开chrome浏览器监听网络窗口可以发现访问codesec.net时服务器返回301重定向状态码到了www.codesec.net。

更多Tomcat相关教程见以下内容:

CentOS 6.6下安装配置Tomcat环境 http://www.codesec.net/Linux/2015-08/122234.htm

RedHat Linux 5.5安装JDK+Tomcat并部署Java项目 http://www.codesec.net/Linux/2015-02/113528.htm

Tomcat权威指南(第二版)(中英高清PDF版+带书签) http://www.codesec.net/Linux/2015-02/113062.htm

Tomcat 安全配置与性能优化 http://www.codesec.net/Linux/2015-02/113060.htm

Linux下使用Xshell查看Tomcat实时日志中文乱码解决方案 http://www.codesec.net/Linux/2015-01/112395.htm

CentOS 64-bit下安装JDK和Tomcat并设置Tomcat开机启动操作步骤 http://www.codesec.net/Linux/2015-01/111485.htm

CentOS 6.5下安装Tomcat http://www.codesec.net/Linux/2015-01/111415.htm

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

本文地址:http://www.codesec.net/Linux/2016-09/134899.htm


Tomcat 6 绑定域名和根域名

本文系统(linux)相关术语:linux系统 鸟哥的linux私房菜 linux命令大全 linux操作系统

主题: TomcatLinux服务器STL浏览器JavaSEOUTUB搜索引擎
分页:12
转载请注明
本文标题:Tomcat 6 绑定域名和根域名
本站链接:http://www.codesec.net/view/481901.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 系统(linux) | 评论(0) | 阅读(32)