zoukankan      html  css  js  c++  java
  • CentOS7安装Tomcat

    一.二进制包安装Tomcat

    1.下载解压二进制包

    wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz
    tar zxvf apache-tomcat-8.5.32.tar.gz -C /usr/local/
    cd /usr/local/
    ln -s /usr/local/apache-tomcat-8.5.32 /usr/local/tomcat # 创建软连接
    

    2.关闭SELinux

    setenforce 0 # 临时关闭
    sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config # 永久关闭
    

    3.防火墙开启8080端口

    iptables -I INPUT -p tcp --dport 8080 -j ACCEPT # 临时生效
    /etc/init.d/iptables save # 保存到配置文件,永久生效
    /etc/init.d/iptables status # 查看iptables当前状态
    

    4.启动tomcat进程

    /usr/local/tomcat/bin/startup.sh 
    

    5.查看tomcat进程

    ps -ef|grep tomcat
    

    6.查看tomcat进程对应的端口是否成功启动

    lsof -i:8080
    

    7.测试是否能成功访问

    curl http://localhost:8080
    http://192.168.164.134:8080/
    

    8.编写jsp测试程序

    cat > /usr/local/tomcat/webapps/ROOT/test.jsp << eof
    <html>
            <head>
                    <title>Hello World</title>
            </head>
            <body>
                    <%
                            out.println("Hello World!");
                    %>
            </body>
    </html>
    eof
    
    #通过浏览器访问test.jsp
    http://192.168.164.134:8080/test.jsp
    

    9.以普通用户身份运行tomcat(jsvc方式运行tomcat)

    通过/usr/local/tomcat/bin/startup.sh脚本启动tomcat,如果需要让tomcat监听80端口就必须使用root用户来运行此脚本,这样在安全上存在风险。jsvc是daemon模式来启动tomcat的程序,可以在普通用户下打开80端口。

    9.1 创建tomcat启动用户

    #创建tomcat用户组和用户
    getent group tomcat || groupadd -r tomcat
    #这里的tomcat用户没有登录权限,如果需要su切换到tomcat启动,则需要设置-s为/bin/bash
    getent passwd tomcat || useradd -r -d /usr/local/tomcat -s /sbin/nologin -g tomcat tomcat
    
    #设置tomcat用户组和用户的目录权限
    chown -R tomcat:tomcat /usr/local/tomcat
    

    9.2 配置tomcat环境变量

    cat > /etc/profile << eof
    #set tomcat environment
    export CATALINA_HOME=/usr/local/tomcat
    export CATALINA_BASE=/usr/local/tomcat
    export PATH=$PATH:$CATALINA_HOME/bin
    eof
    
    #使用新加的环境变量立即生效
    source /etc/profile
    

    9.3 创建setenv.sh,增加启动参数

    #在 tomcat/bin 目录下面,增加 setenv.sh 
    cat > /usr/local/tomcat/bin/setenv.sh << eof
    #add tomcat pid
    CATALINA_PID="$CATALINA_BASE/logs/tomcat.pid"
    #add java opts
    JAVA_OPTS="-server -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
    eof
    

    9.4 安装jsvc

    cd /usr/local/tomcat/bin/
    tar zxvf commons-daemon-native.tar.gz
    cd commons-daemon-1.1.0-native-src/unix/
    ./configure --with-java=/usr/java/jdk #这里需要gcc、make等编译工具,可以yum -y groupinstall "Development Tools"安装
    make 
    cp jsvc /usr/local/tomcat/bin/
    

    9.5 设置启动脚本

    ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat #设置软链接
    vi /etc/init.d/tomcat
    #在第二行添加
    # chkconfig: 2345 85 15
    # description: Tomcat daemon
    #set java home
    JAVA_HOME=/usr/java/jdk
    # 保存退出
    
    #需要设置其中的TOMCAT_USER=tomcat,JAVA_HOME=/usr/java/jdk
    #每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用 跨行注释。
    
    #前台启动tomcat
    /etc/init.d/tomcat run
    
    #启动tomcat
    /etc/init.d/tomcat start
    
    #设置开机自启动
    chkconfig --add tomcat
    

    9.6 使用systemctl来管理tomcat

    #查看tomcat状态
    systemctl status tomcat.service
    
    #启动tomcat
    systemctl start tomcat.service
    
    #设置tomcat开机自启动
    systemctl enable tomcat.service
    
    #重启tomcat
    systemctl restart tomcat.service
    
    #停止tomcat
    systemctl stop tomcat.service
    
    #取消tomcat开机自启动
    systemctl disable tomcat.service
    

    二.源码包安装Tomcat

    http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.32/src/apache-tomcat-8.5.32-src.tar.gz
    

    Tomcat8下载地址:

    http://tomcat.apache.org/download-80.cgi

    参考资料:

    https://www.jianshu.com/p/29ecd624046f

    http://www.zhengdazhi.com/archives/1382

    https://blog.csdn.net/lee4755026/article/details/50146287

    https://blog.csdn.net/tiantang_1986/article/details/53704966

    http://commons.apache.org/proper/commons-daemon/jsvc.html

    https://www.cnblogs.com/allegro/p/5005352.html

    https://www.cnblogs.com/origalom/p/7666897.html

  • 相关阅读:
    Silverlight实例教程
    Silverlight实例教程
    Delphi:ADOConnection连接SQLServer自动断网问题解决
    用delphi写多屏幕程序
    GitHub中watch、star、fork的作用
    JFinal Weixin 1.6发布【转】
    JFinal2.0极速开发视频教程发布【转】
    Android之Http通信——1.初识Http协议
    UVa 10986
    重写MPAndroidChart显示标记
  • 原文地址:https://www.cnblogs.com/wushuaishuai/p/9323214.html
Copyright © 2011-2022 走看看