[JAVA开发专题]安装配置Apache Tomcat(二)

时间:2008-03-29 18:46:52  类别:ubuntu 安装  作者:shixinyu


Tomcat服务器是启动起来了,但是除了Tomcat默认页之外却无法查看Tomcat自带的Servlet/JSP Demo,因为单击“Status“和”Tomcat Manager“都需要用户名和密码。现在就需要为Tomcat配置添加管理用户了,在前面《安装配置Apache Tomcat(一)》这篇文章中,Tomcat是装在了/home/shixinyu/JAVA/apache-tomcat-6.0.14,为了阅读方便,这里说明一个变量约定:
$CATALINA_HOME,当文章中出现“$CATALINA_HOME”,就是指你的Tomcat的安装位置,比如对于我的机子而言,$CATALINA_HOME=/home/shixinyu/JAVA/apache-tomcat-6.0.14。
eg. $CATALINA_HOME/bin=/home/shixinyu/JAVA/apache-tomcat-6.0.14/bin
现在进入$CATALINA_HOME/conf这里,你会看到一个XML文件是tomcat-users.xml,使用你习惯的文本编辑器来打开这个文件,比如Ubuntu自带的Gedit。在这里就可以配置Tomcat用户,xml(eXtensible Mackup Language)这个文件是“可扩展标记语言”,和HTML有些共同点,但功能上是为了弥补HTML的不足,常用于描述数据。所以Tomcat的用户配置管理通过这个tomcat-users.xml来描述用户资料。XML标准结构:声明、根节点、子元素,下面是一个普通XML的Demo:

<?xml version='1.0' encoding='UTF-8'>
<rootnode>
<node>Content</node>
</rootnode>
可以看到XML的标记总是成双成对的,但这仅限于有元素的标记。如果是空元素的标记,则就是仅有自身的空元素标记,比如<tag_name attributte="">。了解了XML的结构,就可以正确去编写Tomcat的用户配置文件:
<?xml version='1.0' encoding='UTF-8'>
<tomcat-users>
<role rolename="manager">
<role rolename="admin">
<user username="shixinyu" password="pwd" roles="admin,manager">
</tomcat-users>
需要你自定义的只有两个属性,一个是username,另外一个是password。可以看到配置文件里用到了空元素标记,如果你只需要配置一个管理员用户,就和上面这个XML一样配置即可,如果你想添加多个管理员帐户,则只需要写多个<user>这个空元素标记即可,格式见"shixinyu"那一条。
配置好这里就可以重启Tomcat服务器后登录并查看Status和Manager了。
我们都会注意到每次登录访问Tomcat服务器,除了地址之外还需要加上端口号8080,这是因为Tomcat设置了默认端口8080。Web服务器默认端口号是80,那些我们只需要输入域名和IP就可以直接访问的Web网站都是用了80默认端口号了的,如果我们想直接输入IP地址或主机名即可直接访问Tomcat,只需要修改一下Tomcat的默认端口号即可。
用文本编辑器打开$CATALINA_HOME/conf下的server.xml这个文件,使用搜索替换功能(按下组合键Ctrl+H)找到8080并替换为80即可(只有一处需要修改,里面有注释内容包含8080字样,修改注释内容是无效的,在Gedit编辑器下,需要修改的那部分会高亮显示为绿色和红色),重启Tomcat服务器,现在你应该不需要再输入端口号即可直接登录访问Tomcat服务器了。什么?页面载入错误?那么原因可能有两个:
1、你的Ubuntu里安装了Apache Web Server并且已经启动了,就会占用着80端口,那么已经设置为80端口的Tomcat自然就无法启动起来了。只需要关闭Apache Web Server即可;
2、在Linux下,启用80端口是需要root权限的,那么以我们在前面文章说的那种直接在Nautilus里双击startup.sh就不能够启用80端口了。所以只需要用root权限来启动startup.sh即可,比较简单的办法就是在终端中使用sudo来启动:
$sudo $CATALINA_HOME/bin/startup.sh
输入当前管理员帐户密码即可,现在应该可以直接输入IP地址或主机名来登录访问Tomcat了吧。
将在下一篇文章中继续介绍将Tomcat集成到MyEclipse中,方便开发部署。


特别推荐

广而告之