`

运维那点事5:搭建个tomcat(fedora20)

 
阅读更多

 目录(这里我不用yum tomcat!因为包里面有openjdk。)

  1. 配置好jdk or JRE(若已有,跳过)
  2. tomcat 版本更新
  3. 无语的tomcat启动后无法关闭解决方式:
  4. 没安装services.bat 导致的错误
  5. 换tomcat图标 容器级别,针对所有项目
  6. tomcat 自启动!
  7. 当tomcat只给一个项目用,可以配置一下不输入应用名称来访问应用。(可选)还有配置一些resources。
  8. windos下打包tar.gz
  9. 其他,如打war包命令

 

 

 

 内容

 

  • 配置好jdk or JRE(若已有,跳过)

 

  1 执行bin文件,一步搞定。#sh jdk1.6.0_45.bin;
     这里要先看下当前系统装的jdk情况。#rpm -qa|grep jdk
如果是安装了自带的openjdk,则先清了自带的openjdk。命令如下:
    #yum -y remove java java-1.7.0-openjdk*  卸载openjdk和相关依赖软件。

 

  2 查看安装位置,方便设置JAVA_HOME;

 

     这里还有一个个人原因,在执行第一步的时候多了好多rpm包,我想看看安装的位置跟那些包有没有关系,没有就直接删了。

     我在没有配置好下面那几个参数的时候,用whereis 和which看不出jdk或者jre的字眼,所以,还是乖乖用find命令。但是要小心陷阱,这里我就踩到了,懵了!天真 如下:

  

写道
#find / -name jdk

 

      因为执行#java version后看得出版本信息。也就是说铁定安装完成。所以自以为用上面这个命令执行后就给我出现一个带有jdk字眼的路径,结果……

写道
find: ‘/run/user/1000/gvfs’: 权限不够

 

      除了这个没有别的。然后我用whereis 和which的时候也找不到带有jdk的字眼。当时我真是晕了,不晓得jdk装在哪里,以至于下面的JAVA_HOME我无从下手。搞到那些…….rpm的包不敢删掉,也碍眼!

     

     偶然下用下面的命令,才让我走出困境。

 

写道
[root@localhost conf]# find / -name java
find: ‘/run/user/1000/gvfs’: 权限不够
/opt/openoffice.org/ure/share/java
/opt/openoffice.org/basis3.4/share/Scripts/java
/opt/sun/javadb/demo/programs/vtis/java
/opt/sun/javadb/demo/programs/scores/java
/etc/pki/java
/etc/pki/ca-trust/extracted/java
/etc/java
/usr/share/bash-completion/completions/java
/usr/share/java
/usr/lib/java
/usr/java
/usr/java/jdk1.6.0_45/jre/bin/java
/usr/java/jdk1.6.0_45/bin/java
/usr/bin/java
[root@localhost conf]#

 

      这下我才知道了安装路径。(虽然后面知道安装默认位置都是那个地方,只是,那时,我真的面朝宇宙了天真。)

      只是,究竟为啥用第一个就找不到呢,我去!暂时不纠结,总之最后结果如下:

 

写道
1 修改/etc/profile
# export JAVA_HOME=/usr/java/jdk1.6.0_45
# export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
# export PATH=$PATH:$JAVA_HOME/bin
2 重启,或者#source /etc/profile

 

 

  • tomcat 版本更新
写道
参考http://www.iteye.com/news/28792-apache-tomcat
Tomcat 全系安全漏洞,请尽快修复

修复方法

Apache Tomcat最新版本中修复了这些漏洞,请升级至如下版本。

升级至Apache Tomcat 8.0.0-RC10或更新版本
升级至Apache Tomcat 7.0.50或更新版本
升级至Apache Tomcat 6.0.39或更新版本

 

  • 无语的tomcat启动后无法关闭解决方式:
方式一:
写道
#ps -ef|grep tomcat
#kill -9 pid
 
方式二:
一打:项目打包出来;
二删:删除环境下项目文件;清理缓存;
三确认:再启动访问确认环境无问题;
四解:重新解包处理即可;

 

  • 安装services.bat 
写道
参考http://www.cnblogs.com/sevensunset/articles/1726762.html 和 http://hi.baidu.com/annleecn/item/82543d153110b3f9756a84fe
运行tomcat6.exe屏幕一闪就没了;执行tomcat6w.exe ,提示 “指定的服务未安装 unable to open the service 'tomcat6'”
原来是没有安装services.bat 服务,解决方法很简单,在tomcat/bin目录的doc命令下,输入:services.bat install ,一切搞定。

 

 

  •  换tomcat图标 容器级别,针对所有项目
写道
1 自己网上根据自己需要做个favicon.ico图片;网上百度下就可以找到格式在线转换格式哈;
2 到apache-tomcat-6.0.41/webapps/ROOT下;
3 删掉原有的favicon.ico和tomcat.svg
4 换上自己的favicon
5 启动容器,重启浏览器再访问,搞定!

  

  •  tomcat自启动 参考http://blog.csdn.net/zzvnzz/article/details/7701863
写道
Linux启动时,会自动执行/etc/rc.d目录下的程序。
可以设置以自启动服务脚本方式来启动Tomcat服务。

具体操作:

以root身份,cd到/etc/rc.d/init.d/
#vi tomcat
#chmod 775 tomcat
# chkconfig --add tomcat
# chkconfig --list tomcat
  
 tomcat 内容如下
 
写道
#!/bin/bash
# chkconfig: 2345 98 5
# description: script to start/stop tomcat
case $1 in
start)
export JAVA_HOME=/usr/java/jdk1.6.0_45
cd /usr/apache-tomcat-6.0.41/bin/
sh ./startup.sh
;;
stop)
export JAVA_HOME=/usr/java/jdk1.6.0_45
cd /usr/apache-tomcat-6.0.41/bin/
sh ./shutdown.sh
;;
*)
echo "Usage: $0 (start|stop)"
exit 1
;;
esac
exit 0
 
由于每次重启后都得输入一次“service iptables restart”我才能从tomcat外进行访问,所以在刚刚上面的tomcat文件中某个位置添加service iptables restart就OK。

 

  • 当tomcat只给一个项目用,可以配置一下不输入应用名称来访问应用。(可选)还有配置一些resources。
写道
在conf/server.xml里面Host节点里面加一个context节点:
<Context path="" docBase="/wlkt" debug="0" reloadable="true"/>
参考http://www.blogjava.net/baoyaer/articles/107278.html 想知道server.xml参数的话可以看下,很详细

 

写道
在conf/context.xml里面context节点增加resource节点:
<Resource name="XXXX"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://ip:3306/db_name?useUnicode=true&characterEncoding=UTF-8"
username="XXXX"
password="XXXX"
maxIdle="100"
maxWait="5000"
maxActive="300"/>

 

  • windos下打包tar.gz

    有了这个。配合一些ftp工具,如FileZilla,或者LeapFTP等,windowx和linux间也就无啥其他问题了。

    配合tar命令进行-zxvf 打包 和 -zcvf解包,和sftp命令等,就可以远程外网ip linux,再去远程其内网Linux机子。

 

    工具下载可以参考http://blog.csdn.net/ithomer/article/details/5111965 。

 

  • 其他

     打war包

     jar   cvf   temp.war  ( 将当前目录打包成war包.)

   命令格式:jav cvf 打包文件名称 要打包的目录 打包文件保存路径

   jar xvf temp.war (解压)

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics