centos tomcat8,centos7

本篇文章给大家谈谈centos tomcat8,以及centos7对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

centos7+tomcat登陆超时

在工作中开发找到说,项目日志访问域名报错,报错如下:

这是第二次遇到的报错,所以把它记录下来,在服务器curl是另外一种结果,服务器结果如下:

经过第一次的经验就知道,本机的jdk是不信任你这域名的,然后我将这个域名的私钥证书,就是.crt结尾的证书转换成.cer结尾的证书,进行导入到本机jdk里面就可以实现程序的信任了,好了话不多说操作如下。

1.拿到私钥证书之后,使用ie浏览器导入到浏览里面。

找到你的私钥证书

选择你的组

这就是导入成功了。

开始导出.cer结尾的证书,选择你导入证书的组然后点击导出来

选择你要导出的证书编码类型

选择要导出的位置以及导出证书的名字

导出完成。

得到了一个后缀为.cer结尾的证书。然后接下来导入到我们需要的服务器jdk中即可

2.liunx导入证书的命令为如下(本片文章jdk是以yum安装的jdk为主导入的):

(1)找打jdk安装的目录

# pwd

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre/lib/securi

(2)上传要导入的证书

(3)进入jdk安装目录,然后进行导入证书

#导入证书命令

# keytool-import-trustcacerts-alias tomcat-file/home/cert/111.cer-keystore"/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/jre/lib/security/cacerts"-storepass changeit

#删除证书命令

# keytool-delete-alias server-keystore D:\jdk1.6.0\jre\lib\security\cacerts-storepass changeit

这样再用程序调用这域名就不会报超时了。

centos7 安装tomcat8服务及配置jdk1.8教程

下载jdk1.8与tomcat8的压缩包,具体下载地址请参考Java Archive Downloads- Java SE 8与Tomcat 8 Software Downloads。

将下载的jdk包上传至Linux环境中,并解压至/usr/local/目录,重命名文件夹。

打开/etc/profile文件,将如下内容添加在文件底部:

执行命令source/etc/profile以立即生效。

检查jdk是否安装成功,可通过命令"java-version"查看。

注意:确保在配置环境变量时,JAVA_HOME变量路径正确指向/usr/local/jdk1.8。

配置tomcat服务时,确保下载路径正确。启动tomcat服务前,请先查看环境变量,确认JAVA_HOME路径。

编辑/usr/local/apache-tomcat-8.5.76/bin/catalina.sh脚本,确保其脚本中涉及到的jdk环境变量与JAVA_HOME一致。

重新执行启动tomcat服务的命令,确保执行路径正确。

最后,通过本地浏览器访问Linux机器的IP:8080,检查tomcat服务是否已成功启动并运行。

...7安装Tomcat与设置Tomcat为开机启动项tomcat8为例

安装Tomcat

下载Tomcat压缩包

Tomcat有Tomcat7,Tomcat8和Tomcat9等版本,目前企业使用较多的是Tomcat8,所以这里以Tomcat8为列

进入Tomcat8下载网址:Tomcat8下载网址

点击左侧Download下的对应版本,这里我下载的是apache-tomcat-8.5.47.tar.gz,即Linux环境的压缩包

Tomcat主要有三个安装版本tar.gz:Linux环境下的压缩包,免安装Windows.zip:Windows压缩包,免安装,解压即用,同时注意根据自己电脑是64位系统还是32位系统下载对应的压缩包Windows Service Installer:Windows安装包,32位和64位版本的Windows系统都适用安装Tomcat

将下载好的apache-tomcat-8.5.47.tar.gz放到指定目录,我这里放到/usr/local/tomcat,如下图所示

进入/usr/local/tomcat目录,解压Tomcat压缩包

#进入/usr/local/tomcat目录

cd/usr/local/tomcat

#解压Tomcat压缩包

tar-zxvf apache-tomcat-8.5.47.tar.gz

启动Tomcat

进入Tomcat的bin目录,启动Tomcat

#进入Tomcat的bin目录,启动Tomcat

cd apache-tomcat-8.5.47/bin/

#启动Tomcat

./startup.sh查看Tomcat是否启动成功

#查看Tomcat是否启动成功执行

ps-ef| grep tomcat

#如果输出如下,说明Tomcat安装成功

root 2381 1 11 22:18 pts/0 00:00:02/usr/local/jdk1.8.0_152/bin/java-Djava.util.logging.config.file=/usr/local/tomcat/apache-tomcat-8.5.47/conf/logging.properties-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-Djdk.tls.ephemeralDHKeySize=2048-Djava.protocol.handler.pkgs=org.apache.catalina.webresources-Dorg.apache.catalina.security.SecurityListener.UMASK=0027-Dignore.endorsed.dirs=-classpath/usr/local/tomcat/apache-tomcat-8.5.47/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-8.5.47/bin/tomcat-juli.jar-Dcatalina.base=/usr/local/tomcat/apache-tomcat-8.5.47-Dcatalina.home=/usr/local/tomcat/apache-tomcat-8.5.47-Djava.io.tmpdir=/usr/local/tomcat/apache-tomcat-8.5.47/temp org.apache.catalina.startup.Bootstrap start

root 2513 29060 0 22:18 pts/0 00:00:00 grep–color=auto tomcat使用浏览器访问Tomcat,地址Linux的ip:8080,我这里的ip端口是,如下图说明在Linux(CentOS7)环境安装启动Tomcat成功,为自己点一个赞

注意:开放8080端口或者关闭防火墙

附加:开放8080端口或者关闭防火墙,如果是阿里云只能在阿里云控制台配置开放端口

#开启8080端口

firewall-cmd–zone=public–add-port=8080/tcp–permanent

#查询端口号8080是否开启

firewall-cmd–query-port=8080/tcp

#重启防火墙

firewall-cmd–reload

#查看开放端口列表

firewall-cmd–list-port

#命令含义

–zone#作用域

–add-port=8080/tcp#添加端口,格式为:端口/通讯协议

–permanent#永久生效,没有此参数重启后失效

#关闭防火墙

systemctl stop firewalld.service#停止firewall

systemctl disable firewalld.service#禁止firewall开机启动设置Tomcat为开机启动项按照上面的方式启动Tomcat,如果我们的虚拟机或者服务器关闭了,重启服务器后Tomcat是关闭的,但是我们希望虚拟机或者服务器重启后,Tomcat可以自己启动,所以我们需要设置Tomcat为开机启动项

创建setenv.sh文件,为Tomcat添加启动参数

catalina.sh在执行的时候会调用同级路径下的setenv.sh来设置额外的环境变量,因此在/usr/local/tomcat/apache-tomcat-8.5.47/bin路径下创建setenv.sh文件,内容如下:

#设置Tomcat的PID文件

CATALINA_PID=”$CATALINA_BASE/tomcat.pid”

#添加JVM选项

JAVA_OPTS=”-server-XX:PermSize=256M-XX:MaxPermSize=1024m-Xms512M-Xmx1024M-XX:MaxNewSize=256m”在/usr/local/tomcat/apache-tomcat-8.5.47/bin/catalina.sh文件开头添加JAVA_HOME和JRE_HOME,其中/usr/local/jdk1.8.0_152为jdk的安装目录

export JAVA_HOME=/usr/local/jdk1.8.0_152

export JRE_HOME=/usr/local/jdk1.8.0_152/jre如果在catalina.sh不配置JAVA_HOME和JRE_HOME就会报如下的错误

[root@JourWon~]# systemctl status tomcat

● tomcat.service– Tomcat

Loaded: loaded(/usr/lib/systemd/system/tomcat.service; enabled; vendor preset: disabled)

Active: failed(Result: exit-code) since Mon 2019-10-21 19:54:54 CST; 6s ago

Process: 8746 ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh(code=exited, status=1/FAILURE)

Oct 21 19:54:54 JourWon systemd[1]: Starting Tomcat…

Oct 21 19:54:54 JourWon startup.sh[8746]: Neither the JAVA_HOME nor the JRE_…d

Oct 21 19:54:54 JourWon startup.sh[8746]: At least one of these environment…m

Oct 21 19:54:54 JourWon systemd[1]: tomcat.service: control process exited,…=1

Oct 21 19:54:54 JourWon systemd[1]: Failed to start Tomcat.

Oct 21 19:54:54 JourWon systemd[1]: Unit tomcat.service entered failed state.

Oct 21 19:54:54 JourWon systemd[1]: tomcat.service failed.

Hint: Some lines were ellipsized, use-l to show in full.在/usr/lib/systemd/system路径下添加tomcat.service文件,内容如下:

[Unit]

Description=Tomcat

After=network.target remote-fs.target nss-lookup.target

[Service]

Type=forking

TimeoutSec=0

PIDFile=/usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid

ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh

ExecReload=/bin/kill-s HUP$MAINPID

ExecStop=/bin/kill-s QUIT$MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target此外service文件修改后需要调用systemctl daemon-reload命令重新加载。

配置TimeoutSec=0的目的是让开机启动不处理tomcat启动超时,保证tomcat耗时过长时不会被系统terminating,如果不配置可能出现下面的情况

Oct 21 20:26:37 JourWon startup.sh[1634]: Existing PID file found during start.

Oct 21 20:26:37 JourWon startup.sh[1634]: Removing/clearing stale PID file.

Oct 21 20:26:37 JourWon startup.sh[1634]: Tomcat started.

Oct 21 20:26:37 JourWon systemd[1]: PID file/usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid not readable(yet?) after start.

Oct 21 20:26:38 JourWon polkitd[464]: Unregistered Authentication Agent for unix-process:1628:19013(system bus name:1.23, object path/org/freedesktop/PolicyKit1/AuthenticationAgent, loca

Oct 21 20:28:07 JourWon systemd[1]: tomcat.service start operation timed out. Terminating.

Oct 21 20:28:07 JourWon systemd[1]: Failed to start Tomcat.把Tomcat加入开机自启动

systemctl enable tomcat.service

重启服务器reboot

再次连接后,查看服务状态

[root@JourWon~]# systemctl status tomcat

● tomcat.service– Tomcat

Loaded: loaded(/usr/lib/systemd/system/tomcat.service; enabled; vendor preset: disabled)

Active: activating(start) since Mon 2019-10-21 20:12:19 CST; 8s ago

Process: 9244 ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh(code=exited, status=0/SUCCESS)

CGroup:/system.slice/tomcat.service

└─9255/usr/local/jdk1.8.0_152/jre/bin/java-Djava.util.logging.config.file=/usr/local/tomcat/apache-tomcat-8.5.47/conf/logging.properties-Djava.util.logging.manager=org.apac…

Oct 21 20:12:19 JourWon systemd[1]: Starting Tomcat…

Oct 21 20:12:19 JourWon startup.sh[9244]: Existing PID file found during start.

Oct 21 20:12:19 JourWon startup.sh[9244]: Removing/clearing stale PID file.

Oct 21 20:12:19 JourWon startup.sh[9244]: Tomcat started.

Oct 21 20:12:19 JourWon systemd[1]: PID file/usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid not readable(yet?) after start.查看开机启动列表命令

systemctl list-unit-files| grep enabled

查看Tomcat是否设置为开机启动项,如果显示为enabled,说明设置成功

参数说明

static:表示该服务与其他服务相关联,不能单独设置该服务的启动状态disabled:表示禁止开机启动enabled:表示允许开机启动

[root@JourWon~]# systemctl list-unit-files| grep tomcat

tomcat.service enabled总结以上所述是小编给大家介绍的Linux(CentOS7)安装Tomcat与设置Tomcat为开机启动项(tomcat8为例),大家如有疑问可以留言,或者联系站长。感谢亲们支持!!!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

阅读剩余
THE END