Linux安装Tomcat

2022-08-04 17:32:25 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

1.卸载

到tomcat的安装目录

代码语言:javascript复制
 rm -rf /usr/java/tomcat/apache-tomcat-8.5.31

2.安装

从官网上下载linux版本的tomcat(apache-tomcat-8.5.31.tar.gz) 通过ftp或者rz命令上传到linux 我的tomcat装到/usr/local目录下,在/usr/local目录下新建tomcat文件夹

代码语言:javascript复制
mkdir /usr/local/tomcat
tar -zxvf apache-tomcat-8.5.31.tar.gz  -C /usr/local/tomcat

进入tomcat的bin目录下,vi命令打开setclasspath.sh

代码语言:javascript复制
vi /usr/local/tomcat/apache-tomcat-8.5.31/bin/setclasspath.sh 

在结尾处加入下面两条代码

代码语言:javascript复制
export JAVA_HOME=/usr/local/java/jdk1.8.0_172
export JRE_HOME=/usr/local/java/jdk1.8.0_172/jre

进入到tomcat bin目录下 ./startup.sh 启动tomcat ./shutdown.sh 关闭tomcat

3.防火墙

开放 8080 端口:

代码语言:javascript复制
firewall-cmd --zone=public --add-port=8080/tcp --permanent 

重启防火墙:

代码语言:javascript复制
 firewall-cmd --reload  

查看放口墙端口规则:

代码语言:javascript复制
firewall-cmd --list-all

4.设置tomcat自启动

5.1 修改 rc.local 文件配置(文件最后添加脚本)

代码语言:javascript复制
 vim /etc/rc.d/rc.local 

文本最后增加脚本:

代码语言:javascript复制
 JAVA_HOME=/usr/java/jdk1.7.0_80
  export JAVA_HOME
  /tomcat7/bin/startup.sh

说明:安装的 jdk 版本为 jdk 1.70_80 并安装在了 /usr/java 目录下,所以 JAVA_HOME为上述结果 ;如果在 /etc/rc.d/ 目录下修改rc.local文件为可执行,如: chmod x rc.local 重启机器即可 reboot

5.验证

查看tomcat是否启动:ps -ef | grep tomcat

6.其他

代码语言:javascript复制
一、查看Tomcat进程  
ps -ef|grep java  
  
二、、杀死进程(10740为进程Pid)  
kill -9 10740  
  
三、重启Linux服务器  
reboot  
  
四、进入到Tomcat下的logs目录,动态查看日志文件,退出查看日志使用 :Ctrl Z  
tail -f catalina.out  
  
  
五、jar命令解压war包  
jar -xvf game.war  
解压到当前目录  
  
六、删除文件夹实例:  
  
rm -rf /var/log/httpd/access  
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹  
  
删除某文件夹下所有文件,不删除该文件夹  
rm -rf /test/*   
或者进入test文件夹:cd test,然后:rm -rf *  
  
删除单个文件夹:rmdir 文件夹名,如:rmdir aa  
  
七、删除文件使用实例:  
rm -f /var/log/httpd/access.log  
将会强制删除/var/log/httpd/access.log这个文件  

七、配置远程访问tomcat管理

tomcat8.5管理员默认只能在安装tomcat的机器上访问,如果想在其他机器上访问,则需要进行配置修改

添加用户和权限(conftomcat-users.xml):

代码语言:javascript复制
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="admin" roles="admin-gui,manager-gui" />

修改tomcat管理功能配置文件(/webapps/manager/META-INF/context.xml),注释掉地址限制:

改为

代码语言:javascript复制
<Context antiResourceLocking="false" privileged="true" >
    <!--
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.d .d .d |::1|0:0:0:0:0:0:0:1" />
    -->

</Context>

重启服务器,刷新访问的浏览器登录即可访问: http://网址/manager/html

Tomcat配置ssl证书

代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />

  <GlobalNamingResources>
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>

  <Service name="Catalina">
    <Connector port="8080" connectionTimeout="20000" />

    <Connector port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" scheme="https" secure="true" defaultSSLHostConfigName="域名">
        <SSLHostConfig hostName="域名">
          <Certificate certificateKeystoreFile="证书存放路径" certificateKeystorePassword="证书密码" certificateKeystoreType="PKCS12" />
        </SSLHostConfig>
		
		<SSLHostConfig hostName="ccc.ccc.cc">
          <Certificate certificateKeystoreFile="/usr/share/tomcat/cert/ccc.ccc.cc.pfx" certificateKeystorePassword="123456ccc" certificateKeystoreType="PKCS12" />
        </SSLHostConfig>
    </Connector>

    <Engine name="Catalina">
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/>
      </Realm>

      <Host name="ccc.ccc.cc" appBase="/www/workdir/DDD" unpackWARs="true" autoDeploy="true">
         <Context path="/" docBase="/www/webapps/DDD-0.0.1-SNAPSHOT.war" privileged="true"></Context>
         <Context path="/data" reloadable="true" docBase="/www/Attachment/DDD"></Context>
      </Host>
       </Engine>
  </Service>
</Server>

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106551.html原文链接:https://javaforall.cn

0 人点赞