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
成功!