tomcat服务搭建部署ujcms网站

news2025/1/9 5:13:10

tomcat服务搭建部署ujcms网站

在这里插入图片描述

关闭selinux和防火墙

setenforce 0 && systemctl stop firewalld
安装java环境
#卸载原有java8环境
yum remove java*

#上传java软件包,并解压缩
tar -xf openjdk-11.0.1_linux-x64_bin.tar.gz && mv jdk-11.0.1 jdk11 && mv jdk11 /usr/local/

#配置环境变量
vi /etc/profile
#在文件末尾输入以下内容:
export JAVA_HOME=/usr/local/jdk11
export CLASSPATH=${JAVA_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin
export CATALINA_HOME=/usr/local/tomcat9
export CATALINA_BASE=/usr/local/tomcat9

#重载环境变量
source /etc/profile

#查看java版本
java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
安装tomcat环境
#上传软件包,并解压缩
tar -xf apache-tomcat-9.0.80.tar.gz && mv apache-tomcat-9.0.80 tomcat9 && mv tomcat9/ /usr/local/

vim /usr/local/tomcat9/conf/server.xml
#修改以下配置
161       <Host name="www.testtomcat123.com"  appBase="webapps"
162             unpackWARs="true" autoDeploy="true">

配置tomcat的systemd启停服务

vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target

[Service]
Type=forking
Environment=JAVA_HOME=/usr/local/jdk11
Environment="CATALINA_HOME=/usr/local/tomcat9"
Environment="CATALINA_BASE=/usr/local/tomcat9"
ExecStart=/usr/local/tomcat9/bin/startup.sh
ExecStop=/usr/local/tomcat9/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

重载配置文件并启动

systemctl daemon-reload
systemctl start tomcat.service
修改Tomcat Connector运行模式为apr

apr的全称是Apache Portable Runtime,它是一个高度可移植的库,它是Apache HTTP Server 2.x的核心。 APR有许多用途,包括访问高级IO功能(例如sendfile,epoll和OpenSSL),操作系统级别的功能(生成随机数,系统状态等)和本机进程处理(共享内存,NT管道和Unix套接字)。

Tomcat可以通过JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,从而大大地提高Tomcat对静态文件的处理性能。

通过使用APR我们可以获得如下的特性:

  • Non-blocking I/O和请求连接保持。
  • 支持OpenSSL和TLS/SSL。

Tomcat Native是一个库,通过这个库,Tomcat可以使用APR

使用Tomcat Native的前提是需要安装好APR library,OpenSSL和JDK。

yum install apr-devel openssl-devel

一般来可以在tomcat包中的 bin/ 目录下找到tomcat-native.tar.gz的源码包,编译安装即可。

tar -xf tomcat-native.tar.gz -C /usr/local/src/

先运行configure命令:

cd /usr/local/src/tomcat-native-1.2.38-src/native

./configure --with-apr=/usr/bin/apr-1-config \
            --with-java-home=/usr/local/jdk11 \
            --with-ssl=yes \
            --prefix=/usr/local/tomcat9

再进行make安装

make && make install

生成的依赖文件将会被放入$CATALINA_HOME/lib中

安装好tomcat-native之后,我们就可以在tomcat中使用APR了。

先检查一下conf/server.xml中是否有下面的配置:

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

在 $CATALINA_HOME/bin 目录下新建 setenv.sh ,将tomcat-native的依赖文件添加到LD_LIBRARY_PATH中

[root@zyj bin]# vim setenv.sh
# 写入以下配置
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib
export LD_LIBRARY_PATH

#添加执行权限
[root@zyj bin]# chmod +x setenv.sh

最后修改使用APR的连接:

69     <Connector port="8080" protocol="HTTP/1.1"
70                connectionTimeout="20000"
71                redirectPort="8443"
72                maxParameterCount="1000"
73                />
69     <Connector port="8080" protocol="org.apache.coyote.http11.Http11AprProtocol"
70                connectionTimeout="20000"
71                redirectPort="8443"
72                maxParameterCount="1000"
73                />

启动tomcat服务

#查看日志,成功加载了apr库
[root@zyj logs]# cat catalina.out |grep APR
12-Sep-2024 16:32:54.405 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 使用APR版本[1.7.0]加载了基于APR的Apache Tomcat本机库[1.2.38]12-Sep-2024 16:32:54.405 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR功能:IPv6[true]、sendfile[true]、accept filters[false]、random[true]、UDS [true]12-Sep-2024 16:32:54.405 信息 [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL配置:useAprConnector[false],useOpenSSL[true]

部署ujcms网站

#安装mysql服务
[root@zyj ~]# yum install mysql-server
[root@zyj ~]# systemctl enable --now mysqld.service
[root@zyj ~]# mysqladmin -uroot password aaa...111

#创建数据库
[root@zyj ~]# mysql -uroot -paaa...111
mysql> create database ujcms;

#ujcms官网
#https://www.ujcms.com/download/
#https://www.ujcms.com/uploads/ujcms-9.6.2.zip
#运行环境:JDK 11,Tomcat 9 (兼容 8.5),MySQL 8.0 (兼容 5.7.22+)
#将网站程序文件夹放到webapps下
[root@zyj webapps]# ls
ROOT

#修改数据库连接文件 密码改为aaa...111
vim webapps/ROOT/WEB-INF/classes/application.yaml

#重启tomcat服务
systemctl restart tomcat.service

访问ujcms后台设置本站点域名
在这里插入图片描述
搭建完成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2151096.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android Perfetto 学习

1、如何抓取性能日志 方式1、通过手机里的System Tracing抓取 1、点击Settings->System->Developer options->System Tracing->Record trace 打开 2、操作完成后&#xff0c;点击Settings->System->Developer options->System Tracing->Record trace…

C++自动寻径算法

测试 #include <iostream> #include "source/AStar.hpp"int main() {AStar::Generator generator;generator.setWorldSize({25, 25});generator.setHeuristic(AStar::Heuristic::euclidean);generator.setDiagonalMovement(true);generator.addCollision({1, …

Vue 实现高级穿梭框 Transfer 封装

文章目录 01 基础信息1.1. 技术栈1.2. 组件设计a. 竖版设计稿b. 横版设计稿 02 技术方案&#xff08;1&#xff09;初定义数据&#xff08;2&#xff09;注意事项&#xff08;3&#xff09;逻辑草图 03 代码示例3.1. 组件使用3.2. 组件源码./TransferPlus/index.vue./TransferP…

爬虫----webpack

目录 一. 什么是webpack 出现的原因&#xff1a;同名函数 概念: 特征&#xff1a;大量缩进 webpack的格式 简单的webpack格式&#xff1a; 详细的webpack格式&#xff1a; 几个参数的运用 1. webpack数组形式 2. webpack对象格式 3.多个js文件打包 打印要扣的代码 …

【STM32 Blue Pill编程实例】-手机通过HC-05串口蓝牙控制LED

手机通过HC-05串口蓝牙控制LED 文章目录 手机通过HC-05串口蓝牙控制LED1、HC-05串口蓝牙模块介绍2、硬件准备和接线3、模块配置4、代码实现5、手机控制在本文中,我们介绍如何使用 STM32CubeIDE 和 HAL 库将 HC-05 蓝牙模块与 STM32 Blue Pill 开发板连接。 我们将使用 Android…

HarmonyOS 应用获取公钥和 MD5 指纹签名信息

鸿蒙版本获取 MD5 指纹和公钥可参考如下方式; 首先,通过 AGC 官网 将所需证书下载至本地; 其次,通过记事本或者文本编译器的方式将其正式打开,将其内容中前两项 BEGIN CERTIFICATE 和 END CERTIFICATE 的段落删除,仅保留最后一段中的内容(包括 BEGIN CERTIFICATE 和 END CERTI…

Jboss CVE-2017-12149 靶场攻略

漏洞简述 该漏洞为 Java反序列化错误类型&#xff0c;存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter过滤器中。该过滤器在没有进⾏任何安全检查的情况下尝试将来⾃客户端的数据流进⾏反序列化&#xff0c;从⽽导 致了漏洞 漏洞范围 JBoss 5.x/6.x 环境搭建 …

Xinstall全链路解决方案,让社交App推广效果倍增!

随着互联网的飞速发展&#xff0c;社交App如雨后春笋般涌现&#xff0c;然而&#xff0c;如何在激烈的市场竞争中脱颖而出&#xff0c;成为每个推广者亟待解决的问题。今天&#xff0c;就让我们来揭秘Xinstall如何助力社交App打破运营推广瓶颈&#xff0c;让你的推广之路更加顺…

前端vue-父传值给儿子或者孙子(依赖注入),只能从上层传给下层组件

不是响应式的 加上computed包裹就是响应式的&#xff0c;但是发明这个传值方法的目的就是不让他成为响应式的&#xff0c;所以推荐使用上面的写法。

对商品分类系统的若干问题的思考

科学研究的目的就是研究事物的特征&#xff0c;并根据共同的特征加以分类 商品分类是商业&#xff0c;制造业中最普遍的活动&#xff0c;几乎所有的企业&#xff0c;电商平台都要对销售的商品&#xff0c;使用的原材料&#xff08;BOM&#xff09;进行分类和编号。 商品分类貌似…

OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【内核通信机制】下

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ 子系统开发内核 轻量系统内核&#xff08;LiteOS-M&#xff09; 轻量系统内核&#…

前端自动化测试框架:如何选择最适合你的方案

前端自动化测试是指使用代码或工具来模拟用户在浏览器上的操作&#xff0c;以检验网页或应用程序的功能和性能是否符合预期。前端自动化测试可以提高开发效率&#xff0c;减少人工错误&#xff0c;保证软件质量和用户体验。 但是&#xff0c;在众多的前端自动化测试框架中&…

鸿蒙应用开发:视频播放

AVPlayer API同样适用于视频播放&#xff0c;与音频播放的区别仅在于是否提供surfaceId&#xff08;相当于给视频播放选择一个容器&#xff09;。鸿蒙官网描述&#xff0c;surfaceId指视频窗口ID&#xff0c;只允许在initialized状态下设置&#xff0c;在视频播放时要指定窗口进…

破损shp文件修复

大家中秋节快乐&#xff01; 介绍 半年前写过破损shp文件修复的内容&#xff0c;当时写了一个简陋的小工具。 现在重新讲讲这方面的内容&#xff0c;这篇文章也主要围绕以下两个方面进行展开&#xff1a; 1、当时是怎么实现破损shp文件修复 2、现在怎么把这个功能集成到rs…

LINUX网络编程:TCP(1)

目录 1.认识Tcp的报头 2.确认应答机制&#xff08;ACK&#xff09; 序号与确认序号 捎带应答 3.超时重传机制 4.Tcp连接管理 三次握手 为什是三次握手 四次挥手 理解TIMEWAIT 1.认识Tcp的报头 源端口和目的端口号没什么说的 32位的序号和确认序号&#xff0c;之后会介…

如何使用ssm实现毕业生学历证明系统+vue

TOC ssm651毕业生学历证明系统vue 绪论 1.1 课题背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们思想上不可跨域的鸿沟&#xff0…

Linux C# DAY3

作业 1、 #!/bin/bash mkdir -p ~/dir/dir1 mkdir ~/dir/dir2 cp ./* ~/dir/dir1 cp ./*.sh ~/dir/dir2 cd ~/dir/ tar -cvJf dir2.tar.xz ./dir2 mv dir2.tar.xz ~/dir/dir1/ cd ~/dir/dir1/ tar -xvf dir2.tar.xz 2、 #!/bin/bash head -5 /etc/group | tail -1 sudo mkdi…

Docker安装mysql并配置主从,超详细

简介&#xff1a; 本文使用docker安装mysql&#xff0c;并创建master节点&#xff0c;slave节点用于实现主从。废话不多说&#xff0c;直接开始。 1.docker下载镜像&#xff0c;这里我以5.7版本为例。 docker pull mysql:5.7 2.在宿主机上新建如下目录&#xff0c;进行文件挂…

Lichee NanoKVM基本使用环境

Lichee NanoKVM基本使用环境 本文章主要记录一些自己在初期的使用&#xff0c;以及自己的一些经验 &#xff0c;非常感谢sipeed NanoKVM官方使用教程 外观&#xff08;博主自己的是lite版本&#xff0c;非常感谢sipeed&#xff09; Lichee NanoKVM 是基于 LicheeRV Nano 的 I…

专为GOA TFT-LCD面板设计的16ch水平移位器-iML7272A

GOA是Gate on Array的简写&#xff0c;简单可以理解为gate IC集成在玻璃上了&#xff0c;面板就可以不用gate ic了&#xff0c;窄边框面板大多数都用了GOA技术。随着窄边框设计的日益流行&#xff0c;面板设计的周边空间被逐渐压缩&#xff0c;在传统的GOA电路设计中&#xff0…