您现在的位置是:首页 > 技术教程 正文

(Linux)Centos7.*版本安装配置Java环境、Tomcat、Nginx并打包部署SSM框架web系统

admin 阅读: 2024-03-27
后台-插件-广告管理-内容页头部广告(手机)

目录

一、准备软件与安装包

(一)、必须的软件

1、点击下载Xshell

2、点击下载FileZilla

(二)、准备安装包

1、点击下载JDK1.8Linux版本

2、点击下载Nginx

3、点击下载Tomcat  

二、关于FileZilla软件的使用说明

(一)、FileZilla软件的打开和说明

(二)、配置服务器地址去连接服务器 

三、Xshell的配置连接和基本命令

(一)、使用Xshell软件

(二)、Xshell的相关配置和连接

四、Xshell相关快捷键和CentOs7.*版本相关命令说明

(一)、Xshell中快捷键说明

(二)、Xshell设置

(三)、(Linux)CentOs7.*简单命令

1、我在哪儿?(我在系统中的当前位置)

2、我要去哪儿?(我要去到目标位置)

3、我当前所在的路径下有什么内容?

4、创建一个文件或文件夹

5、删除一个文件或文件夹

6、修改文件或文件夹名称:

7、解压文件:

8、查看CentOs的系统版本号:

9、查看某个进程或端口号是否正在运行以及停止该进程或服务

五、在CentOs7.*系统中安装并配置Java环境

(一)、上传JDK安装包到服务器对应目录下

(二)、解压JDK压缩包

(三)、配置JDK环境变量

1、使用vi或vim目录编辑/etc目录下的profile系统文件.

2、在/etc/profile文件的末尾添加如下内容:

3、使刚刚修改的环境配置生效

4、检测JDK是否配置成功

六、在CentOs7.*系统中安装并配置Tomcat环境

(一)、解压tomcat

(二)、修改tomcat配置文件server.xml

(三)、进入tomcat安装目录下的bin目录并启动tomcat服务

(四)、启动和停止tomcat服务

七、使用IDEA打包web项目为war包并上传至服务器进行部署和访问

(一)、web项目需要在pom.xml配置打包方式、打包名字及打包规则

(二)、pom.xml

(三)、使用IDEA进行clear、install、compile、package的过程

(四)、使用FileZilla将demo.war上传至服务器的/usr/local/tomcat/apache-tomcat-8.5.87/webapps目录下

(五)、修改/usr/local/tomcat/apache-tomcat-8.5.87/conf/目录下的server.xml配置文件.

(六)、启动tomcat服务

(七)、使用IP:PORT进行访问

(八)、停止tomcat服务出错

八、配置tomcat为服务器开机启动服务

(一)、关闭tomcat服务

(二)、在/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下创建setenv.sh文件并添加内容

(三)、配置/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下的catalina.sh文件

(四)、配置/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下的setclasspath.sh文件

(五)、配置系统文件

(六)、重启服务并查看相关服务状态


一、准备软件与安装包

懒人版,可以直接点击从CSDN下载我上传的资源包(免费):

软件安装包和Linux所需安装包 for CSDN

也可以点下面的连接用百度网盘下载:

软件安装包和Linux所需安装包 for 百度网盘

提取码:1234

资源包结构:

 如果对版本有不同要求的去下面的对应连接里面找相关的版本:

(一)、必须的软件

1、点击下载Xshell

作用:Xshell主要是远程连接服务器,写Linux命令操作服务器等。

2、点击下载FileZilla

作用:使用FileZilla上传文件或文件夹到服务器上。

(二)、准备安装包

1、点击下载JDK1.8Linux版本

2、点击下载Nginx

3、点击下载Tomcat  

综上,所需软件及安装包准备完毕!

二、关于FileZilla软件的使用说明

(一)、FileZilla软件的打开和说明

1、双击打开:

2、打开后是这样:

(二)、配置服务器地址去连接服务器 

1、点击左上角的文件,点击站点管理器

2、站点管理器打开后如下,点新站点

3、配置服务器IP地址(公有地址)、访问的协议为SFTP、端口号:22、用户名:root 

配置好以后是这样:

注意:如果点击连接显示连接失败或超时,请检查:

1、服务器的端口22是否为打开状态

2、协议是否选择的是SFTP

3、用户名密码是否正确,如果是阿里云等厂商服务器,可以去对应网站的实例找到服务器并修改实例密码

 4、连接成功后可以点击服务器站点查看相应挂载点中的文件夹及文件

 

 

说明:到这一步以后,您的/usr/local下面是没有对应的java、nginx、tomcat文件夹的,需要使用Xshell去创建对应文件夹,这一部分的操作请看第三部分。 

5、连接成功后可以点击服务器站点查看相应挂载点中的文件夹及文件

将jdk、tomcat、nginx和mysql对应的安装包传到对应目录下,以传输jdk为例:

综上、FileZilla的配置和连接完成!

三、Xshell的配置连接和基本命令

(一)、使用Xshell软件

1、打开Xshell 

                

2、打开后是这样

(二)、Xshell的相关配置和连接

1、新建会话

 2、点击连接

 3、点击用户身份验证

4、双击会话管理器进行连接服务器

5、连接成功

6、连接失败处理 

说明:如果连接失败或者有错误提示信息,请一次点开会话管理器---》aliyun----》属性

 点开属性后是这样,着重检查IP地址,用户名和密码是否是服务器的账号密码等配置信息:

 综上、Xshell相关配置和连接完成!

四、Xshell相关快捷键和CentOs7.*版本相关命令说明

(一)、Xshell中快捷键说明

通常我们用到复制外面的内容到Xshell中比较多,使用shift + insert复制内容进去;

要把Xshell中的内容复制出来需要先选中内容,按ctrl + insert进行复制。

  1. ctrl + insert # 复制Xshell中的选中内容
  2. shift + insert # 将外面的内容复制到Xshell中

(二)、Xshell设置

许多朋友喜欢简洁的Xshell,可以进行设置:

①设置主题及颜色

②设置透明度

 ③设置简单界面

(三)、(Linux)CentOs7.*简单命令

经验之谈:学习Linux操作系统或是它的命令都是很枯燥的事情,最好的学习方法是对比windows系统来进行针对性的练习。

比如在Windows中我们时刻关注我自己当前在哪个文件夹下?我要去到哪个文件夹?我要执行什么操作?

1、我在哪儿?(我在系统中的当前位置)

windows:

        我在C盘--->Program Files--->Bonjour这个路径下。

Linux:    

pwd #输完pwd后回车就会显示出当前所在目录位置 /root即您当前所在的位置

 Linux中没有盘符这个说法,没有Windows中所谓的C盘、D盘这样的概念,Linux是以根节点为树顶的一棵倒过来的树形目录,如图:

因此我们必须时刻清楚我们在这颗倒着的树的哪个位置,即需要查看当前所在的位置就使用:pwd命令

2、我要去哪儿?(我要去到目标位置)

windows:

        我从C盘到D盘某个文件夹,只要去点击对应的D盘对应的文件就可以进入了。

Linux:

        cd 目标路径 这个命令指的是你要去到哪个目标位置。

  1. cd / # 去到根节点
  2. cd /usr # 去到根节点下的usr目录
  3. cd /root # 去到根节点下的root目录
  4. cd /usr/local # 去到根节点下的usr目录下的local目录
  5. cd .. #返回上一级,比如:先执行cd /usr/local/tomcat那我现在的位置在/usr/local/tomcat下,执行cd ..就会返回到/usr/local目录下

运用举例:

3、我当前所在的路径下有什么内容?

windows(有什么内容是一眼可以看到的):

        

Linux:

  1. ls # 查看当前文件夹下面有哪些内容,仅显示文件或文件夹名字
  2. ls -l # 查看当前文件夹下面有哪些内容,显示文件或文件夹名字以及对应权限等
  3. # 根据个人喜好决定使用ls还是ls -l

运用举例:

4、创建一个文件或文件夹

  1. cd /usr/local # 进入usr目录下的local目录
  2. mkdir java # 创建java目录
  3. mkdir tomcat # 创建tomcat目录
  4. mkdir nginx # 创建nginx目录
  5. mkdir mysql # 创建mysql目录

5、删除一个文件或文件夹

删除文件或文件夹时需要注意细节,rm命令只能删除文件,不能删除空文件夹或者文件夹中有内容的目录。

  1. rm t.java # 删除t.java文件
  2. rm test1 # 尝试删除test1文件夹,无论test1文件夹中是否有内容,都无法删除
  3. rm -rf test1 # 这样可以删除test1这个文件夹,连带删除它内部的所有内容

6、修改文件或文件夹名称:

7、解压文件:

tar -zxvf jdk-8u361-linux-x64.tar.gz # 解压JDK压缩包

8、查看CentOs的系统版本号:

cat /etc/centos-release

9、查看某个进程或端口号是否正在运行以及停止该进程或服务

你可以使用以下命令来查询tomcat是否真正运行:
1. 检查Tomcat进程是否存在

ps -ef | grep tomcat

2. 查看Tomcat是否监听了端口8080

netstat -an | grep 8080

如果Tomcat进程存在并且监听了端口8080,则说明Tomcat正在运行

综上、关于Xshell和CentOs7.*版本的简单命令讲完!

五、在CentOs7.*系统中安装并配置Java环境

(一)、上传JDK安装包到服务器对应目录下

使用FileZilla连接服务器,找到服务器的/usr/local/java目录,这里的java是我们自己使用mkdir java创建的,如果没有可以创建一个。

(二)、解压JDK压缩包

使用Xshell连接到服务器,使用cd 命令进入/usr/local/java目录,使用tar -zxvf jdk-8u361-linux-x64.tar.gz 解压JDK压缩包。

(三)、配置JDK环境变量

1、使用vi或vim目录编辑/etc目录下的profile系统文件.

vim /etc/profile # 编辑系统文件

 接着按下回车:

 可以使用:set nu显示文件行号:

 将输入法调整为英文状态,按i对系统文件进行编辑:

2、在/etc/profile文件的末尾添加如下内容:

  1. cd /etc/profile # 编辑系统文件
  2. # 在打开的文件最末端添加如下内容
  1. 78 # 配置jdk全局变量-灰灰老师
  2. 79 JAVA_HOME=/usr/local/java/jdk1.8.0_361
  3. 80 CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
  4. 81 PATH=$PATH:$JAVA_HOME/bin
  5. 82 export PATH JAVA_HOME CLASSPATH

其中JAVA_HOME=后面的内容是你服务器的JDK解压后的位置,可以通过如下命令找到JDK所在位置:

① 已知JDK所在位置时,如下:

 ② 忘记JDK安装路径时,如下:

 配置好的系统文件如下:

编辑完成后按esc键退出编辑模式,输入:wq进行保存,如果保存失败则使用:wq!强制保存,如下:

出现红色:

那就使用 :wq!强制保存.

 

 确认一下刚刚修改的内容是否保存成功:

使用vim /etc/profile进入刚刚编辑的文件核对最后是否有关于JDK的配置内容了,有即已保存成功,如果没有重新执行上面的编辑操作即可。

3、使刚刚修改的环境配置生效

source /etc/profile # 使刚刚配置的系统文件生效

4、检测JDK是否配置成功

  1. java -version # 查看JDK版本
  2. java # java编译命令
  3. javac # javac编译命令

 综上、CentOs7.*系统中就已经安装和配置好JDK的环境了。

六、在CentOs7.*系统中安装并配置Tomcat环境

(一)、解压tomcat

  1. cd /usr/local/tomcat/ # 去到放apache-tomcat-8.5.87.tar.gz安装包的目录下
  2. ls -l # 显示目录下的内容
  3. tar -zxvf apache-tomcat-8.5.87 # 执行解压

(二)、修改tomcat配置文件server.xml

  1. cd apache-tomcat-8.5.87/ # 去到tomcat文件目录下
  2. ls -l # 查看目录文件
  3. cd conf/ # 去到conf文件目录下
  4. ls -l # 查看目录文件

 编辑配置文件:

 显示行号:

:set nu

按i键进入编辑模式,大约在69行的位置将端口号进行修改,并执行 :wq!强制保存:

(三)、进入tomcat安装目录下的bin目录并启动tomcat服务

  1. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/ # 进入tomcat解压文件
  2. ls -l # 查看目录

(四)、启动和停止tomcat服务

  1. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/ # 去到tomcat的bin目录下
  2. ./startup.sh # 启动tomcat服务
  3. ./shutdown.sh # 停止tomcat服务

 注意:启动命令前面是点杠, 这个 ./ 不能少,./的意思类似于双击鼠标运行windows里面的.exe文件

在浏览器中输入IP:port,即IP地址冒号端口号进行访问:

此时看到一只汤姆猫就证明你的tomcat服务是能够正常使用的。

 

tomcat相关命令:

  1. ./startup.sh # 启动tomcat服务
  2. ./shutdown.sh # 停止tomcat服务

七、使用IDEA打包web项目为war包并上传至服务器进行部署和访问

综述:这部分主要解决的问题是,使用IP:PORT默认访问到的tomcat的首页,也就是有汤姆猫的页面,怎么让它访问到我们的web项目呢?

(一)、web项目需要在pom.xml配置打包方式、打包名字及打包规则

(二)、pom.xml

 为了便于核对,附上版主所用的pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0modelVersion>
  5. <parent>
  6. <groupId>org.springframework.bootgroupId>
  7. <artifactId>spring-boot-starter-parentartifactId>
  8. <version>2.7.2version>
  9. <relativePath/>
  10. parent>
  11. <groupId>com.sizpxgroupId>
  12. <artifactId>demoartifactId>
  13. <version>0.0.1-SNAPSHOTversion>
  14. <packaging>warpackaging>
  15. <name>demoname>
  16. <description>Demo project for Spring Bootdescription>
  17. <dependencies>
  18. <dependency>
  19. <groupId>org.springframework.bootgroupId>
  20. <artifactId>spring-boot-devtoolsartifactId>
  21. <optional>trueoptional>
  22. dependency>
  23. <dependency>
  24. <groupId>org.springframework.bootgroupId>
  25. <artifactId>spring-boot-starter-webartifactId>
  26. dependency>
  27. <dependency>
  28. <groupId>org.springframework.bootgroupId>
  29. <artifactId>spring-boot-starter-thymeleafartifactId>
  30. dependency>
  31. <dependency>
  32. <groupId>mysqlgroupId>
  33. <artifactId>mysql-connector-javaartifactId>
  34. <scope>runtimescope>
  35. dependency>
  36. <dependency>
  37. <groupId>org.projectlombokgroupId>
  38. <artifactId>lombokartifactId>
  39. dependency>
  40. <dependency>
  41. <groupId>tk.mybatisgroupId>
  42. <artifactId>mapper-spring-boot-starterartifactId>
  43. <version>2.1.5version>
  44. dependency>
  45. <dependency>
  46. <groupId>com.alibabagroupId>
  47. <artifactId>druid-spring-boot-starterartifactId>
  48. <version>1.2.1version>
  49. dependency>
  50. <dependency>
  51. <groupId>com.github.pagehelpergroupId>
  52. <artifactId>pagehelper-spring-boot-starterartifactId>
  53. <version>1.3.0version>
  54. dependency>
  55. <dependency>
  56. <groupId>org.springframework.bootgroupId>
  57. <artifactId>spring-boot-starter-testartifactId>
  58. <scope>testscope>
  59. dependency>
  60. <dependency>
  61. <groupId>com.alibabagroupId>
  62. <artifactId>fastjsonartifactId>
  63. <version>1.2.41version>
  64. dependency>
  65. <dependency>
  66. <groupId>org.webjarsgroupId>
  67. <artifactId>jqueryartifactId>
  68. <version>3.6.4version>
  69. dependency>
  70. <dependency>
  71. <groupId>org.springframework.bootgroupId>
  72. <artifactId>spring-boot-starter-tomcatartifactId>
  73. <scope>compilescope>
  74. dependency>
  75. <dependency>
  76. <groupId>org.apache.tomcat.embedgroupId>
  77. <artifactId>tomcat-embed-jasperartifactId>
  78. <scope>compilescope>
  79. dependency>
  80. dependencies>
  81. <properties>
  82. <java.version>1.8java.version>
  83. <failOnMissingWebXml>falsefailOnMissingWebXml>
  84. properties>
  85. <build>
  86. <plugins>
  87. <plugin>
  88. <groupId>org.springframework.bootgroupId>
  89. <artifactId>spring-boot-maven-pluginartifactId>
  90. plugin>
  91. plugins>
  92. <resources>
  93. <resource>
  94. <directory>src/main/javadirectory>
  95. <includes>
  96. <include>**/*.xmlinclude>
  97. includes>
  98. resource>
  99. <resource>
  100. <directory>src/main/resourcesdirectory>
  101. resource>
  102. resources>
  103. <finalName>demofinalName>
  104. build>
  105. project>

(三)、使用IDEA进行clear、install、compile、package的过程

特别说明,在idea中打包顺序按12345执行,特别注意在第2步的install之后需要compile一次,在第4步的package后再执行一次compile进行编译。

打包操作完成后,可以在web目录项目左侧的target中找到demo.war,将demo.war复制到桌面上准备上传至服务器中。

 

(四)、使用FileZilla将demo.war上传至服务器的/usr/local/tomcat/apache-tomcat-8.5.87/webapps目录下

在进行上传之前先停止tomcat服务:

  1. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/ # 去到tomcat的bin目录下
  2. ./shutdown.sh # 停止tomcat服务

 去到tomcat目录的webapps目录下,查看是否有已经在运行的项目文件:

  1. cd /usr/local/tomcat/apache-tomcat-8.5.87/webapps/ # 放demo.war的目录
  2. ls -l # 查看是否存在*.war结尾的其他项目正在运行的

 如果存在*.war或*.jar的其他项目包,可以进行备份,可以通过修改原有的*.war或*.jar名字进行备份操作:

 最后使用FileZilla将demo.war拖拽到/usr/local/tomcat/apache-tomcat-8.5.87/webapps目录下:

 正在传输:

 传输完成:

(五)、修改/usr/local/tomcat/apache-tomcat-8.5.87/conf/目录下的server.xml配置文件.

显示行号:

 

 修改server.xml的端口号,使其与项目端口号保持一致:

 在server.xml中大约151的位置进行修改tomcat服务文件,将默认访问的地址指向我们自己的web项目demo.war。

附上修改前的整个server.xml文件代码:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Server port="8005" shutdown="SHUTDOWN">
  3. <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  4. <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  5. <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  6. <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  7. <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
  8. <GlobalNamingResources>
  9. <Resource name="UserDatabase" auth="Container"
  10. type="org.apache.catalina.UserDatabase"
  11. description="User database that can be updated and saved"
  12. factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
  13. pathname="conf/tomcat-users.xml" />
  14. GlobalNamingResources>
  15. <Service name="Catalina">
  16. <Connector port="8080" protocol="HTTP/1.1"
  17. connectionTimeout="20000"
  18. redirectPort="8443" />
  19. <Engine name="Catalina" defaultHost="localhost">
  20. <Realm className="org.apache.catalina.realm.LockOutRealm">
  21. <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
  22. resourceName="UserDatabase"/>
  23. Realm>
  24. <Host name="localhost" appBase="webapps"
  25. unpackWARs="true" autoDeploy="true">
  26. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  27. prefix="localhost_access_log" suffix=".txt"
  28. pattern="%h %l %u %t "%r" %s %b" />
  29. Host>
  30. Engine>
  31. Service>
  32. Server>

原来的整个Host标签的内容如下:

  1. <Host name="localhost" appBase="webapps"
  2. unpackWARs="true" autoDeploy="true">
  3. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  4. prefix="localhost_access_log" suffix=".txt"
  5. pattern="%h %l %u %t "%r" %s %b" />
  6. Host>

替换后的Host标签内容如下:

  1. <Host name="localhost" appBase=""
  2. unpackWARs="true" autoDeploy="true">
  3. <Context path="/" docBase="webapps/demo" debug="0" privileged="true" reloadable="true" />
  4. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  5. prefix="localhost_access_log" suffix=".txt"
  6. pattern="%h %l %u %t "%r" %s %b" />
  7. Host>

附上修改后的整个server.xml文件代码:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <Server port="8005" shutdown="SHUTDOWN">
  3. <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  4. <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  5. <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  6. <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  7. <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
  8. <GlobalNamingResources>
  9. <Resource name="UserDatabase" auth="Container"
  10. type="org.apache.catalina.UserDatabase"
  11. description="User database that can be updated and saved"
  12. factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
  13. pathname="conf/tomcat-users.xml" />
  14. GlobalNamingResources>
  15. <Service name="Catalina">
  16. <Connector port="8086" protocol="HTTP/1.1"
  17. connectionTimeout="20000"
  18. redirectPort="8443" />
  19. <Engine name="Catalina" defaultHost="localhost">
  20. <Realm className="org.apache.catalina.realm.LockOutRealm">
  21. <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
  22. resourceName="UserDatabase"/>
  23. Realm>
  24. <Host name="localhost" appBase=""
  25. unpackWARs="true" autoDeploy="true">
  26. <Context path="/" docBase="webapps/demo" debug="0" privileged="true" reloadable="true" />
  27. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  28. prefix="localhost_access_log" suffix=".txt"
  29. pattern="%h %l %u %t "%r" %s %b" />
  30. Host>
  31. Engine>
  32. Service>
  33. Server>

修改完成后按esc退出编辑模式,使用:wq或:wq!保存server.xml文件并退出.

配置说明:

在`server.xml`文件中,需要以下几个步骤来配置Tomcat以使我们能够访问自己的项目:

1. 确认Tomcat是否有配置好正确的端口,可以通过修改``元素来实现:

```
           connectionTimeout="20000"
           redirectPort="8443" />
```
其中,`port`属性表示访问Tomcat的端口号,可以根据自己的需要进行修改。

2. 在``元素中,添加一个``元素来指定我们的项目路径:

```
            unpackWARs="true" autoDeploy="true">

     
     

```
其中,`path`属性表示访问自己的项目的URL,`docBase`属性表示自己的项目的路径或者WAR文件的路径,可以修改为你自己的项目路径或WAR文件路径。

3. 保存`server.xml`文件并重启Tomcat,然后就可以通过访问上一步中定义的`path`属性链接来访问我们自己的项目了,比如上面的例子中就可以通过访问`http://localhost:8080/`来访问我们的项目。

注意:修改`server.xml`配置文件需要谨慎操作,并且在重启Tomcat之前务必备份好该文件,以防止配置错误。

(六)、启动tomcat服务

(七)、使用IP:PORT进行访问

此时访问的页面不再是tomcat自带的汤姆猫界面了,而是我们自己的web项目的界面,就说明这个配置是OK的。 

(八)、停止tomcat服务出错

如下图:

原因:端口被占用。造成错误的原因大多是因为未停止tomcat服务就对tomcat的配置文件进行编辑造成的。

解决方案:

①查看哪些服务占用了您配置的端口

 ps -ef | grep tomcat

②可以使用如下命令直接强行杀死占用端口的程序:

  1. kill -9 tomcat
  2. kill -9 1458 # 这里的1458就是占用的进程ID

或者重启服务器也可以解决这一类端口占用问题。

八、配置tomcat为服务器开机启动服务

说明:按照上面的方式启动Tomcat,如果我们的虚拟机或者服务器关闭了,重启服务器后Tomcat是关闭的,每次都需要手动启动,比较麻烦。我们希望虚拟机或者服务器重启后,Tomcat可以自己启动,所以我们需要设置Tomcat为开机启动项,具体操作参考下面的操作流程:

(一)、关闭tomcat服务

  1. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/ # 进入tomcat安装目录的bin目录下
  2. ./shutdown.sh # 关闭tomcat服务

(二)、在/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下创建setenv.sh文件并添加内容

进入tomcat的安装目录下的bin目录并创建setenv.sh文件:

  1. # 进入tomcat的bin目录
  2. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/
  3. # 查看已有文件
  4. ll
  5. # 创建setenv.sh文件
  6. vim setenv.sh

在setenv.sh文件中添加如下内容:

此处CATALINA_PID中的tomcat.pid系统会自动创建。

  1. # 设置Tomcat的PID文件
  2. CATALINA_PID="$CATALINA_BASE/tomcat.pid"
  3. # 添加JVM选项
  4. JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

(三)、配置/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下的catalina.sh文件

首先使用命令编辑catalina.sh文件:

  1. # 进入tomcat的bin目录
  2. cd /usr/local/tomcat/apache-tomcat-8.5.87/bin/
  3. # 查看目录结构
  4. ll
  5. # 编辑catalina.sh文件
  6. vim catalina.sh

 此文件很长,前面是很多注释,大概在126行的后面添加JDK的环境变量:

  1. export JAVA_HOME=/usr/local/java/jdk1.8.0_361
  2. export JRE_HOME=/usr/local/java/jdk1.8.0_361/jre

(四)、配置/usr/local/tomcat/apache-tomcat-8.5.87/bin/目录下的setclasspath.sh文件

说明:tomcat启动的大致流程是startup.sh->catalina.sh->setclasspath.sh,而setclasspath.sh的作用就是加载环境变量,使用如下命令对setclasspath.sh进行编辑:

vim /usr/local/tomcat/apache-tomcat-8.5.87/bin/setclasspath.sh

在make和if之间,大致24-25行之间添加JDK环境变量:

export JAVA_HOME=/usr/local/java/jdk1.8.0_361

(五)、配置系统文件

在/usr/lib/systemd/system路径下添加tomcat.service文件,命令如下:

  1. # 编辑tomcat.service文件,如果原来没有会新建立一个tomcat.service文件
  2. vim /usr/lib/systemd/system/tomcat.service

打开后是一个空的文件,在该文件中插入如下代码:

  1. [Unit]
  2. Description=Tomcat
  3. After=network.target remote-fs.target nss-lookup.target
  4. [Service]
  5. Type=forking
  6. TimeoutSec=0
  7. # 其中/usr/local/tomcat/apache-tomcat-8.5.87/是tomcat的安装目录,此部分内容中有这个地址的都要替换
  8. PIDFile=/usr/local/tomcat/apache-tomcat-8.5.87/tomcat.pid
  9. ExecStart=/usr/local/tomcat/apache-tomcat-8.5.87/bin/startup.sh
  10. ExecReload=/bin/kill -s HUP $MAINPID
  11. ExecStop=/bin/kill -s QUIT $MAINPID
  12. PrivateTmp=true
  13. [Install]
  14. WantedBy=multi-user.target

说明:配置TimeoutSec=0的目的是让开机启动不处理tomcat启动超时,保证tomcat耗时过长时不会被系统terminating。

插入内容完成后按est退出编辑模式,执行命令:wq!保存改文件,并使如下命令使修改过的文件生效:

一定要使用此命令让修改后的文件生效!!!

  1. # 使修改过的文件生效
  2. systemctl daemon-reload

将tomcat服务加入开机自启动列表!!!

systemctl enable tomcat.service

(六)、重启服务并查看相关服务状态

重启服务:

reboot # 重启服务

此时会重启所有服务,建议将服务器重启一次。

重启服务和重启服务器完成后可以查看服务列表:

systemctl status tomcat # 查看tomcat服务

查看开机启动列表:

systemctl list-unit-files | grep enabled

此时直接使用IP:端口访问可以看到已经能访问到项目,说明刚刚的配置是成功的、生效的:

综上、Tomcat相关配置完结!

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索
排行榜