日期:2014-05-16  浏览次数:20717 次

Linux 安装tomcat 及过程中遇到的问题

Linux 安装tomcat(tomcat能用的前提是系统已经安装jdk)

1、下载linux系统版tomcat,解压后通过ftp上传到Linux服务器
    例:tomcat放在 /opt/tomcat文件夹下
2、修改环境变量(直接修改文件,也可用命令行修改)
 用ftp把 /etc文件夹下的profile 文件下载到本地,打开后在文件尾部增加下面几行
 export CATALINA_HOME=/opt/tomcat
 export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
 export PATH=$PATH:$CATALINA_HOME/bin
 然后将文件保存并上传覆盖原文件
3、可以通过echo $CLASSPATH来查看环境配置

4、启动tomcat服务

将目录切换到opt/tomcat/bin执行sh catalina.sh,提示信息如下:(此处可能会不提示下面两行信息)

The BASEDIR environment variable is not defined correctly
This environment variable is needed to run this program
通过情况配置完成之后就会报此类错误提示,该提示表示bin目录下相关.sh后缀文件没有执行权限,使用命令chmod +x *.sh来给所有的.sh文件以执行权限,

再执行sh catalina.sh或者sh startup.sh,便提示如下信息表示配置ok:

Using CATALINA_BASE:   /opt/tomcat
Using CATALINA_HOME:   /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME:        /usr/jdk1.6.0_23
Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar

到此可以测试tomcat是否成功启动   浏览器输入  http://192.168.4.233:8080

下面说下我本次安装出现的一种情况:
输入链接后并没有进入tomcat首页,进入到tomcat安装目录下的log文件夹下,查看catalina.out文件发现报错:
1.StandardServer.await: create[8005]:   
2.java.net.BindException: Cannot assign requested address  
3.    at java.net.PlainSocketImpl.socketBind(Native Method)  
4.    at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)  
5.    at java.net.ServerSocket.bind(ServerSocket.java:319)  
。。
。。
。。
。。

查资料说是因为localhost interface没有配置好的原因。
于是 ping localhost
直接去ping一个远程地址了,打开/etc/hosts,发现127.0.0.1后面的主机名由localhost被改成了给该机器分配的主机名,
改回127.0.0.1 localhost.localdomain localhost
重启tomcat
刚才错误没有了,又出现一个新错误:
错误: 代理抛出异常 : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: bogon
原因是hosts文件还少一行:127.0.0.1 bogon.localdomain bogon
重启tomcat
成功!