WEB集群-Tomact集群

linux云计算中小企业规模集群架构设计图----总结

在写今天内容前,小编绘制一个图:我设计了linux云计算中小企业规模集群架构设计图(也可根据业务需求,增加业务变成大型企业架构设计图)

在这里插入图片描述

知识补充–故障案例-https no such故障案例

在这里插入图片描述
原因分析:

  1. SSL证书文件或密钥文件路径错误:
    • 在Nginx配置文件中(通常是nginx.conf),ssl_certificate和ssl_certificate_key指令后指定的文件路径可能不正确。
    • 文件名或扩展名可能拼写错误。
  2. 文件权限问题:
    • SSL证书文件和密钥文件的权限设置可能不正确,导致Nginx无法读取这些文件。
  3. 文件不存在:
    • 指定的文件在服务器上可能根本不存在。
  4. Nginx配置错误:
    • Nginx配置文件可能存在语法错误,导致Nginx无法正确解析并加载SSL配置。
  5. 服务器或网络问题:
    • 服务器上的磁盘空间不足或文件系统损坏可能导致文件无法访问。
    • 网络问题可能导致服务器无法正确读取存储在远程位置的文件。

解决方案:

  1. 检查文件路径和文件名:
    • 确保Nginx配置文件中指定的SSL证书和密钥文件的路径和文件名完全正确。
    • 使用ls -l命令在服务器上检查文件是否存在及其路径是否正确。
  2. 检查文件权限:
    • 确保Nginx进程有权访问SSL证书和密钥文件。通常,这些文件应该由root用户拥有,并且Nginx进程(通常也是以root或特定用户身份运行)应该有读取权限。
  3. 重新加载Nginx配置:
    • 修改Nginx配置文件后,使用nginx -t命令检查配置文件的语法是否正确。
    • 如果配置文件没有问题,使用nginx -s reload命令重新加载Nginx配置。
  4. 查看Nginx错误日志:
    • 检查Nginx的错误日志文件(通常位于/var/log/nginx/error.log),以获取有关无法加载SSL证书或密钥文件的更多信息。
  5. 检查磁盘空间和网络连接:
    • 确保服务器上有足够的磁盘空间来存储SSL证书和密钥文件。
    • 检查服务器的网络连接,确保Nginx可以访问存储在远程位置的文件(如果有的话)。
  6. 重新生成或获取SSL证书:
    • 如果SSL证书已过期或损坏,请考虑重新从证书颁发机构获取新的证书

知识补充–故障案例-keepalived调用脚本监控服务失败

在使用 Keepalived 作为高可用性解决方案时,经常会配置脚本来监控特定的服务(如Web服务器、数据库等)的状态。如果服务未运行或响应异常,Keepalived 应该根据配置执行相应的动作(如故障转移)。有时可能会遇到 Keepalived 调用脚本监控服务失败的情况,导致无法正确地进行故障检测或转移

解决方案:

  • keepalived执行脚本失败
  • 脚本权限,并确保有执行权限(chmod +x script.sh命令)
  • 验证脚本功能(手动运行脚本,检查脚本的输出与检查)
  • 根据错误提示查看配置文件内容
  • 查看keepalived日志/var/log/messages
  • 查找关键词:faild,error,unkown等词

知识补充–故障案例–wordpress无法一直停留在登录页面方法

解决方案:

  • 清除浏览器缓存与cookie
  • 检查WordPress URL和服务器状态
  • 修改wp-config.php文件
  • 修改wp-includes/pluggable.php文件
  • 直接在浏览器中输入登录页面的URL(如http://你的域名/wp-login.php)可以绕过一些潜在的登录问题。

WEB集群-Tomact集群

内容

  • java容器
  • jvm,jre,jdk
  • 部署java环境,tomact
  • 目录结构
  • 配置使用
  • 常用部署java代码方式:war,jar
  • nginx+tomact
  • 远程监控功能
  • tomact故障案例
  • 前后端分离项目

java容器

  • java容器:用于存放与运行java代码的环境

  • web中间件

在这里插入图片描述

weblogic属于oracle(甲骨文)

JVM-JRE-JDK

  • 1份代码处处运行与使用,代码的可移植性
  1. JVM:java虚拟机中,运行java代码的地方
  2. JRE:java Runtime Enviroment java运行环境,提供jvm环境,java命令
  3. JDK:Java Development Kit java开发环境,jvm+jre+额外功能

在这里插入图片描述

提示:
未来部署JDK即可,jdk
jdk–>oracle
openjdk —》开源
未来根据开发使用的环境准备即可
目前主要版本:jdk 1.8 jdk 8 jdk22.0.2

Tomcat部署

1.环境准备

在这里插入图片描述

2.部署jdk

  • jdk 1.8.351 8u351(二进制部署)
    在这里插入图片描述
[root@web03 ~]#mkdir -p /app/tools
[root@web03 ~]#tar xf jdk-8u351-linux-x64.tar.gz -C /app/tools/
[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 8 root root 273 724 18:56 jdk1.8.0_351# 创建软链接,方便升级或者后续操作
[root@web03 ~]#ln -s /app/tools/jdk1.8.0_351/   /app/tools/jdk
[root@web03 ~]#ll /app/tools/jdk
lrwxrwxrwx 1 root root 24 724 21:14 /app/tools/jdk -> /app/tools/jdk1.8.0_351/配置java环境变量,一般是二进制安装需要配置(yum安装或者rpm包方式安装就不需要配置)
cat >>/etc/profile<<'EOF'
export JAVA_HOME=/app/tools/jdk   
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
EOF# 查看
[root@web03 ~]#tail /etc/profile
doneunset i
unset -f pathmunge
#PS1='\[\e[32;1m\][\u@\h \W]\$ \[\e[0m\]'export PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\$'
export JAVA_HOME=/app/tools/jdk   
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar#让它进行生效
[root@web03 ~]#source /etc/profile#检查,如果好了会有java命令
[root@web03 ~]#java -version
java version "1.8.0_351"
Java(TM) SE Runtime Environment (build 1.8.0_351-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.351-b10, mixed mode)

说明:

export JAVA_HOME=/app/tools/jdk   #JDK目录
export PATH=$JAVA_HOME/bin:$JAvA_HOME/jre/bin:$PATH  #JAVA PATH路径或命令
export CLASSPATH=.$CLASSPATH:.$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar           #依赖,jar包路径

部署tomact

  • tomact 8.5 9.0

  • https://tomcat.apache.org/

在这里插入图片描述

  • 上传tomact 9.052版本
    在这里插入图片描述
#解压,并指定解压目录
[root@web03 ~]#tar xf apache-tomcat-9.0.52.tar.gz -C /app/tools/#查看相关信息
[root@web03 ~]#ll -h
总用量 154M
-rw-------. 1 root root 1.6K 54 19:50 anaconda-ks.cfg
-rw-r--r--  1 root root  11M 824 2021 apache-tomcat-9.0.52.tar.gz
-rw-r--r--  1 root root 143M 724 12:01 jdk-8u351-linux-x64.tar.gz[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 9 root root 220 724 21:34 apache-tomcat-9.0.52
lrwxrwxrwx 1 root root  24 724 21:14 jdk -> /app/tools/jdk1.8.0_351/
drwxr-xr-x 8 root root 273 724 18:56 jdk1.8.0_351#创建软链接,这里注意/app/tools/tomact(tomact后面不能有/,如果有就变成了目录!!!)
[root@web03 ~]#ln -s /app/tools/apache-tomcat-9.0.52/   /app/tools/tomact
#查看
[root@web03 ~]#ll /app/tools/tomact/
总用量 128
drwxr-x--- 2 root root  4096 724 21:34 bin
-rw-r----- 1 root root 18949 731 2021 BUILDING.txt
drwx------ 2 root root   238 731 2021 conf
-rw-r----- 1 root root  6210 731 2021 CONTRIBUTING.md
drwxr-x--- 2 root root  4096 724 21:34 lib
-rw-r----- 1 root root 57092 731 2021 LICENSE
drwxr-x--- 2 root root     6 731 2021 logs
-rw-r----- 1 root root  2333 731 2021 NOTICE
-rw-r----- 1 root root  3372 731 2021 README.md
-rw-r----- 1 root root  6898 731 2021 RELEASE-NOTES
-rw-r----- 1 root root 16507 731 2021 RUNNING.txt
drwxr-x--- 2 root root    30 724 21:34 temp
drwxr-x--- 7 root root    81 731 2021 webapps
drwxr-x--- 2 root root     6 731 2021 work[root@web03 ~]#ll /app/tools/
总用量 0
drwxr-xr-x 9 root root 220 724 21:34 apache-tomcat-9.0.52
lrwxrwxrwx 1 root root  24 724 21:14 jdk -> /app/tools/jdk1.8.0_351/
drwxr-xr-x 8 root root 273 724 18:56 jdk1.8.0_351
lrwxrwxrwx 1 root root  32 724 21:36 tomact -> /app/tools/apache-tomcat-9.0.52/#检查tomact中能不能调用系统中的JDK?
[root@web03 ~]#/app/tools/tomact/bin/version.sh 
Using CATALINA_BASE:   /app/tools/tomact
Using CATALINA_HOME:   /app/tools/tomact
Using CATALINA_TMPDIR: /app/tools/tomact/temp
Using JRE_HOME:        /app/tools/jdk
Using CLASSPATH:       /app/tools/tomact/bin/bootstrap.jar:/app/tools/tomact/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Server version: Apache Tomcat/9.0.52
Server built:   Jul 31 2021 04:12:17 UTC
Server number:  9.0.52.0
OS Name:        Linux
OS Version:     3.10.0-1160.118.1.el7.x86_64
Architecture:   amd64
JVM Version:    1.8.0_351-b10
JVM Vendor:     Oracle Corporation#启动tomact
#注意:这里systemctl命令启动不了,systemctl针对(yum,rpm包),二进制需要用绝对路径进行启动;会明显发现,都是以.sh进行结尾的(tomact为脚本的组合方式进行运转)
#未来管理java(tomact)可以使用systemctl(后期写个脚本,就可以实现systemcl进行控制!!)
[root@web03 ~]#/app/tools/tomact/bin/
catalina.sh      configtest.sh    digest.sh        setclasspath.sh  startup.sh version.sh       ciphers.sh       daemon.sh        makebase.sh     shutdown.sh tool-wrapper.sh  #查看端口号
[root@web03 ~]#ss -lntup |grep java
tcp    LISTEN     0      100    [::]:8080               [::]:*                   users:(("java",pid=2054,fd=57))
tcp    LISTEN     0      1        [::ffff:127.0.0.1]:8005               [::]:*                   users:(("java",pid=2054,fd=65))
#查看java相关进程
[root@web03 ~]#ps -ef |grep java
root       2054      1  5 21:43 pts/0    00:00:01 /app/tools/jdk/bin/java -Djava.util.logging.config.file=/app/tools/tomact/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 /app/tools/tomact/bin/bootstrap.jar:/app/tools/tomact/bin/tomcat-juli.jar -Dcatalina.base=/app/tools/tomact -Dcatalina.home=/app/tools/tomact -Djava.io.tmpdir=/app/tools/tomact/temp org.apache.catalina.startup.Bootstrap start
root       2093   1527  0 21:44 pts/0    00:00:00 grep --color=auto java

在这里插入图片描述

  • 浏览器访问 www.https//10.0.0.9:8080
    在这里插入图片描述

tomact 目录结构

(1)目录概述;

在这里插入图片描述
[root@web03 ~]#cd /app/tools/tomact/
[root@web03 /app/tools/tomact]#ll
总用量 128
drwxr-x— 2 root root 4096 7月 24 21:34 bin
-rw-r----- 1 root root 18949 7月 31 2021 BUILDING.txt
drwx------ 3 root root 254 7月 24 21:43 conf
-rw-r----- 1 root root 6210 7月 31 2021 CONTRIBUTING.md
drwxr-x— 2 root root 4096 7月 24 21:34 lib
-rw-r----- 1 root root 57092 7月 31 2021 LICENSE
drwxr-x— 2 root root 197 7月 24 21:43 logs
-rw-r----- 1 root root 2333 7月 31 2021 NOTICE
-rw-r----- 1 root root 3372 7月 31 2021 README.md
-rw-r----- 1 root root 6898 7月 31 2021 RELEASE-NOTES
-rw-r----- 1 root root 16507 7月 31 2021 RUNNING.txt
drwxr-x— 2 root root 30 7月 24 21:34 temp
drwxr-x— 7 root root 81 7月 31 2021 webapps
drwxr-x— 3 root root 22 7月 24 21:43 work

[root@web03 /app/tools/tomact]#ll bin
总用量 876
-rw-r----- 1 root root  34698 731 2021 bootstrap.jar
-rw-r----- 1 root root  16840 731 2021 catalina.bat
-rwxr-x--- 1 root root  25294 731 2021 catalina.sh
-rw-r----- 1 root root   1664 731 2021 catalina-tasks.xml
-rw-r----- 1 root root   2123 731 2021 ciphers.bat
-rwxr-x--- 1 root root   1997 731 2021 ciphers.sh
-rw-r----- 1 root root  25357 731 2021 commons-daemon.jar
-rw-r----- 1 root root 207420 731 2021 commons-daemon-native.tar.gz
-rw-r----- 1 root root   2040 731 2021 configtest.bat
-rwxr-x--- 1 root root   1922 731 2021 configtest.sh
-rwxr-x--- 1 root root   9100 731 2021 daemon.sh
-rw-r----- 1 root root   2091 731 2021 digest.bat
-rwxr-x--- 1 root root   1965 731 2021 digest.sh
-rw-r----- 1 root root   3606 731 2021 makebase.bat
-rwxr-x--- 1 root root   3382 731 2021 makebase.sh
-rw-r----- 1 root root   3460 731 2021 setclasspath.bat
-rwxr-x--- 1 root root   3708 731 2021 setclasspath.sh
-rw-r----- 1 root root   2020 731 2021 shutdown.bat
-rwxr-x--- 1 root root   1902 731 2021 shutdown.sh
-rw-r----- 1 root root   2022 731 2021 startup.bat
-rwxr-x--- 1 root root   1904 731 2021 startup.sh
-rw-r----- 1 root root  46615 731 2021 tomcat-juli.jar
-rw-r----- 1 root root 425741 731 2021 tomcat-native.tar.gz
-rw-r----- 1 root root   4574 731 2021 tool-wrapper.bat
-rwxr-x--- 1 root root   5540 731 2021 tool-wrapper.sh
-rw-r----- 1 root root   2026 731 2021 version.bat
-rwxr-x--- 1 root root   1908 731 2021 version.sh

(2)conf

在这里插入图片描述

(3)bin目录

在这里插入图片描述

(4)logs日志

在这里插入图片描述

(5)webapps

  • 站点目录
  • war包,自动解压,自动部署

Tomcat日常管理与访问

(1)日常启动与维护

  • 启动tomact查看日志
  • 在这里插入图片描述
    浏览器访问:http://10.0.0.9:8080/
    在这里插入图片描述

(2)书写systemctl管理配置文件进行管理

  • 服务管理指令.
  • 存放在/usr/lib/systemd/system/xxxx.service
  • 分为3个部分.
  • 修改或设置systemctl配置要进行重新加载配置.
    在这里插入图片描述
[root@web03 ~]#systemctl cat sshd
能被systemctl进行操作的命令,背后都是服务有相对应的文件进行操作,存放在/usr/lib/systemd/system/xxxx.service# /usr/lib/systemd/system/sshd.service
[Unit]
Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target sshd-keygen.service
Wants=sshd-keygen.service[Service]
Type=notify
EnvironmentFile=/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s[Install]
WantedBy=multi-user.target
[root@web01 ~]#systemctl cat nginx
# /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/nginx.pid)"[Install]
WantedBy=multi-user.target[root@web03 ~]#vim /usr/lib/systemd/system/tomact.service# /usr/lib/systemd/system/tomact.service
[Unit]
Description=tomact
Documentation=http://nginx.org/en/docs/
After=network.target 
Wants=network-online.target[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/tomact
ExecStart=/app/tools/tomact/bin/startup.sh
ExecReload=/app/tools/tomact/bin/shutdown.sh && sleep2 &&/app/tools/tomact/bin/startup.sh
ExecStop=/app/tools/tomact/bin/shutdown.sh[Install]
WantedBy=multi-user.target
[root@web03 ~]#vim /etc/sysconfig/tomact
#变量=值
export JAVA_HOME=/app/tools/jdk
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
exportCLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
[root@web03 ~]#echo $PATH 
/app/tools/jdk/bin:/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin## $PATH在tomact中的enviromentfile识别不了,需要将$PATH变成/app/tools/jdk/bin:/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin[root@web03 ~]#systemctl daemon-reload 
[root@web03 ~]#systemctl enable tomact.service 
Created symlink from /etc/systemd/system/multi-user.target.wants/tomact.service to /usr/lib/systemd/system/tomact.service.

在这里插入图片描述

3)运行代码

  • 开发人员书写的java代码:java源代码,无法直接部署tomact中
  • 需要对源代码进行编译:生成war包,jar包
  • 通过maven,Gradle把java源代码,编译生成war包,或jar包

案例:部署war包案例,运行memtest.war包案例,放在webapps目录,然后访问即可

在这里插入图片描述

如何编译java源代码:
通过maven,Gradle把java源代码,编译生成war包或jar包.

在这里插入图片描述
在这里插入图片描述

[root@web03 ~]#ll -h memtest.war 
-rw-r--r-- 1 root root 643 86 2024 memtest.war
[root@web03 ~]#ll -h memtest.war 
-rw-r--r-- 1 root root 643 86 2020 memtest.war
[root@web03 ~]#
[root@web03 ~]#mv memtest.war  /app/tools/tomact/webapps/
[root@web03 ~]#ll /app/tools/tomact/webapps/
总用量 8
drwxr-x--- 15 root root 4096 724 21:34 docs
drwxr-x---  7 root root   99 724 21:34 examples
drwxr-x---  6 root root   79 724 21:34 host-manager
drwxr-x---  6 root root  114 724 21:34 manager
-rw-r--r--  1 root root  643 86 2020 memtest.war
drwxr-x---  3 root root  223 724 21:34 ROOT[root@web03 ~]#tree -F /app/tools/tomact/work/
/app/tools/tomact/work/
└── Catalina/└── localhost/├── docs/├── examples/├── host-manager/├── manager/└── ROOT/7 directories, 0 files
  • 访问浏览器
  • 10.0.0.9/memtest/meminfo.jsp网站
    在这里插入图片描述

案例:jar-包案例,运行指定的jar包

启动程序
nginxWebUI-3.4.0.jar java -jar -Dfile.encoding=UTF-8 nginxWebUI-3.4.0.jar
--server.port=8848 --roject.home=/root/Linux: nohup java -jar -Dfile.encoding=UTF-8
/home/nginxWebUI/nginxWebUI.jar --server.port=8080 -
-project.home=/home/nginxWebUI/ > /dev/null &参数说明(都是非必填)

在这里插入图片描述

[root@web03 ~]#mkdir -p  /app/jar/ngxweb/
[root@web03 ~]#cd /app/jar/ngxweb/
[root@web03 /app/jar/ngxweb]#mv  ~/nginxWebUI-master.jar .
[root@web03 /app/jar/ngxweb]#ll
总用量 3932
-rw-r--r-- 1 root root 4023346 516 2022 nginxWebUI-master.jar
[root@web03 /app/jar/ngxweb]#java -jar nginxWebUI-master.jar -Dfile.encoding=UTF-8

出现 at/exception 等这种词就表示有错误:
在这里插入图片描述
在这里插入图片描述

默认是8080,tomact端口也是8080,端口冲突!!!

[root@web03 /app/jar/ngxweb]#java -jar nginxWebUI-master.jar -Dfile.encoding=UTF-8   --server.port=8888-project.home=/home/nginxWebUI/ > /dev/null &参数说明(都是非必填)--server.port占用端口,默认以8080端口启动
--project.home项目配置文件目录,存放数据库文件,证书文件,日志等,默认为
/home/nginxWebUI/
注意Linux命令最后加一个&号,表示项目后台运行

显示这一种图表示成功:
在这里插入图片描述
在这里插入图片描述
运行了这个服务发现页面一直加载,默认在前台显示,未来我们可以开窗口进行测试或者

linux: java -jar -Dfile.encoding=UTF-8 /home/nginxWebUI/nginxWebUI.jar --server.port=8080 --project.home=/home/nginxWebUI/ >/dev/null

  • 浏览器访问10.0.0.9:8888/adminPage/login
    -在这里插入图片描述
    在这里插入图片描述

tomact管理端

  • tomcat管理端,web页面管理与查看tomcat信息的功能.
  • 对tomcat进行调优的时候.
  • 未来优化的时候需要关闭.
conf/tomact-users.xml

在这里插入图片描述

  • 开启管理端功能
    1. 修改配置文件tomcat-users.xml
    2. 修改代码(安全措施,只能127访问)

  • 修改配置文件

[root@web03 ~]# vim /app/tools/tomact/conf/tomact-users.xml
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"version="1.0">
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="wulin" password="1" roles="manager-gui,admin-gui"/>
</tomcat-users>[root@web03 ~]#
  • 只能127访问

[root@web03 ~]# curl -u wulin:1 http://127.0.0.1:8080/manager/status

  • 修改代码
[root@web03 ~]#cd /app/tools/tomcat/webapps/
[root@web03 ~]#sed  -i 's#127#\\d+#g'./host-manager/META-INF/context.xml ./host-manager/WEB-INF/manager.xml  ./manager/META-INF/context.xml[root@web03 ~]#systemctl restart tomcat

访问10.0.0.9:8080/mananger/status:
在这里插入图片描述

tomact配置文件

  • server.xml
#8005端口
2 <Server port="8005"shutdown="SHUTDOWN">
8005 shutdown端口,连接这个端口输入shutdown字符,就可以关闭Tomcat.
#配置  管理端认证功能
<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.MemoryUserDataba
seFactory"pathname="conf/tomcat-users.xml" /></GlobalNamingResources>#8080处理用户的http请求的.<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
#这里的8443是用于处理https请求.
#engine部分,指定默认的虚拟主机.
<Engine name="Catalina"  defaultHost="localhost">defaultHost="localhost"指定localhost作为默认的虚拟主机.
#Host部分,虚拟主机的配置部分.<Host name="localhost"  appBase="webapps"unpackWARs="true" autoDeploy="true"><Valve
className="org.apache.catalina.valves.AccessLogValve"directory="logs"prefix="localhost_access_log"suffix=".txt"pattern="%h %l %u %t &quot;%r&quot;%s %b" /></Host>
Host部分
name="域名"

在这里插入图片描述

  • 配置文件小结

端口:8080,8443,8090(从8.5隐藏开始与apache连接)

Host部分含义

规范tomact访问日志格式

在这里插入图片描述

" quot;表示双引号.

在这里插入图片描述

pattern="%h %l %u %t &quot;%r&quot; %s %b &quot;%
{Referer}i&quot; &quot;%{User-Agent}i&quot; &quot;%
{X-Forwarded-For}i&quot;" />[root@web03 /app/tools/tomact]# vim conf/server.xml
[root@web03 /app/tools/tomact]# systemctl restart tomact
[root@web03 /app/tools/tomact]#ll localhost_access_log.2023-03-21.txt
-rw-r----- 1 root root 8104 jun 16:08 localhost_access_log 2023-02-21.txt

在这里插入图片描述
在这里插入图片描述

1.请求与8080端口连接
2.域名与Host部分的Name进行匹配,
a)匹配成功则使用对应的虚拟主机.
b)匹配失败则使用Engine部分defaultHost指定的默认的虚拟主机进行处理.

tomcat可以处理静态与动态请求.
处理静态请求的效率较低,擅长动态.

案例03: Tomcat部署zrlog应用

https://www.zrlog.com/

  • 代码war
    在这里插入图片描述
[root@web03 ~]#ll zrlog-2.2.1-efbe9f9-release.war 
-rw-r--r-- 1 root root 11243048 724 12:00 zrlog-2.2.1-efbe9f9-release.war[root@web03 ~]#rz -E
rz waiting to receive.
[root@web03 ~]#ll zrlog-2.2.1-efbe9f9-release.war 
-rw-r--r-- 1 root root 11243048 724 12:00 zrlog-2.2.1-efbe9f9-release.war
[root@web03 ~]#mv zrlog-2.2.1-efbe9f9-release.war zrlog.war
[root@web03 ~]#ll zrlog.war
-rw-r--r-- 1 root root 11243048 724 12:00 zrlog.war
[root@web03 ~]#mv zrlog.war  /app/tools/tomact/webapps/:
[root@web03 ~]#ll /app/tools/tomact/webapps/
总用量 10988
drwxr-x--- 15 root root     4096 724 21:34 docs
drwxr-x---  7 root root       99 724 21:34 examples
drwxr-x---  6 root root       79 724 21:34 host-manager
drwxr-x---  6 root root      114 724 21:34 manager
-rw-r--r--  1 root root      643 86 2020 memtest.war
drwxr-x---  3 root root      223 724 21:34 ROOT
-rw-r--r--  1 root root 11243048 724 12:00 zrlog.war

会自动解压,自动解压的过程:
在这里插入图片描述

  • 创建数据库,用户.:
[root@web03 ~]#cd /app/tools/tomact/logs/
[root@web03 /app/tools/tomact/logs]#less catalina.out 
  • 做本地解析
    10.0.0.9 zrlog.wulinlinux.cn

访问浏览器:http://10.0.0.9 zrlog.wulinlinux.cn:8080/zrlog/

安装界面:
在这里插入图片描述
在这里插入图片描述

[root@db01 ~]#mysql -uroot -p123
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.68-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| wordpress          |
| wulin              |
+--------------------+
5 rows in set (0.00 sec)MariaDB [(none)]> select user,host from mysql.user;
+------------+------------+
| user       | host       |
+------------+------------+
| root       | 127.0.0.1  |
| phpmyadmin | 172.16.1.% |
| wulin      | 172.16.1.% |
| root       | ::1        |
| root       | localhost  |
| wulin      | localhost  |
+------------+------------+
6 rows in set (0.00 sec)MariaDB [(none)]> create database zrlog;
Query OK, 1 row affected (0.00 sec)MariaDB [(none)]> grant all on zrlog.* to 'zrlog'@'172.16.1.%'   identified by '123'; 
Query OK, 0 rows affected (0.01 sec)MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| wordpress          |
| wulin              |
| zrlog              |
+--------------------+
6 rows in set (0.00 sec)
  • 访问浏览器页面,网站打不开

打不开原因
#前台页面
http://zrlog.wulinlinux.cn:8080/zrlog/
#后台页面 404
http://zrlog.wulinlinux.cn:8080/admin/login

在这里插入图片描述

  • Tomcat
    在这里插入图片描述
监控https证书是否过期
常用web中间件:
Tomcat,Jetty  jvm,jre,jdk含义与关系.部署  tomcat(jdk,tomcat)  tomcat核心目录和文件bin下面命令
,
[logs下面日志
catalina.out,conf/server.xml,webapps/xxxx.war
常用java部署方式并会部署war包jar包熟悉Tomcat配置文件,8005,8080,8009
连接apache\(使用)
部署zrlog

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

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

相关文章

C#高级:枚举(Enum)从索引、值到注释的完整使用技巧

目录 一、推荐的枚举写法 二、获取注释的封装代码 三、已知【枚举】&#xff0c;获取注释、索引 四、已知【索引】&#xff0c;获取枚举值、注释 五、已知【注释】&#xff0c;获取枚举值、索引 六、创建一个【枚举字典】&#xff0c;key索引&#xff0c;value(枚举值&am…

Java 8 中 20 个高频面试题及答案

文章目录 前言20 道高频题问题 1&#xff1a;给定一个整数列表&#xff0c;使用 Stream 函数找出列表中所有的偶数&#xff1f;问题 2&#xff1a;给定一个整数列表&#xff0c;使用 Stream 函数找出所有以 1 开头的数字&#xff1f;问题 3&#xff1a;如何使用 Stream 函数在给…

光伏电站气象站:现代光伏系统的重要组成部分

光伏电站气象站&#xff0c;作为现代光伏系统的重要组成部分&#xff0c;集成了气象学、电子信息技术、数据处理与分析等多学科技术于一体&#xff0c;能够实时监测并记录包括温度、湿度、风速、风向、太阳辐射强度、降雨量在内的多种气象参数。这些数据不仅是评估光伏板发电效…

git学习笔记(总结了常见命令与学习中遇到的问题和解决方法)

前言 最近学习完git&#xff0c;学习过程中也遇到了很多问题&#xff0c;这里给大家写一篇总结性的博客&#xff0c;主要大概讲述git命令和部分难点问题&#xff08;简单的知识点这里就不再重复讲解了&#xff09; 一.git概述 1.1什么是git Git是一个分布式的版本控制软件。…

嵌入式初学-C语言-五

C语言语句概述 C语句的分类 ⑴ 控制语句 用于完成一定的控制功能 ① if ( ) …… else …… ② for ( ) …… ③ while ( ) …… ④ do …… while ( ) ⑤ continue ⑥ break ⑦ switch ( ) ⑧ return ⑨ goto 标号 (无条件跳转语句) 说明&#xff1a;“( ) ”…

Linux第一个小程序~~~进度条

1.操作过程 我们这个是实现一个进度条的程序&#xff0c;类似于下面的这个样子&#xff0c;但是效果肯定没有下面这个高级哈 我们的实现效果是这个样子的&#xff08;动态的哈&#xff09;&#xff1a; 我们这个需要去进行一个文件系统的搭建&#xff0c;类似于我们进行这个C语…

奇异值分解(SVD)时间复杂度分析与优化

奇异值分解是一种矩阵分解的方法&#xff0c;大学线性代数里面也讲过奇异值分解的方法&#xff0c;因此这是一个为大家所熟知的算法。 1 SVD 时间复杂度分析 给定一个 m n m \times n mn 的矩阵 a \boldsymbol{a} a&#xff0c;按照下面公式做分解&#xff0c;其中 Σ \S…

Cmake生成的Xcode工程相对路径与绝对路径的问题

Cmake生成的Xcode工程相对路径与绝对路径的问题 文章目录 Cmake生成的Xcode工程相对路径与绝对路径的问题前言修改.pbxproj文件验证工程小结 前言 由于Cmake的跨平台的自动化构建的方便性以及他广泛应用于编译过程的管理&#xff0c;在开发过程中难免用到Cmake。我也使用Cmake…

R语言统计分析——控制流

参考资料&#xff1a;R语言实战【第2版】 语句&#xff08;statement&#xff09;是一条单独的R语言或一组复合语言&#xff08;包含在花括号{}中的一组R语言&#xff0c;使用分号分隔&#xff09; 条件&#xff08;cond&#xff09;是一条最终被解析为真&#xff08;TRUE&…

每天一个设计模式之职责链模式(第一天)

特别感谢刘伟老师&#xff0c;看他的书我学到了很多东西&#xff0c;从今天开始我要开始更新啦&#xff01; 在csdn个人博客来总结知识&#xff0c;把他们变成自己的能力。 对三&#xff0c;要不起&#xff0c;张三李四王五几个人在玩斗地主&#xff0c;过过过&#xff0c;一…

Android 应用内下载 APK Demo(Kotlin语言)

应用内下载更新包 包含&#xff1a; 权限检测、通知栏生成进度、实时进度反馈、下载完成自动安装、通知栏点击安装 效果 代码 第三方依赖&#xff08;仅仅主要提供上下文对象Context&#xff09;&#xff1a; implementation com.blankj:utilcodex:1.30.6下载工具类&#x…

【Python】python员工信息管理系统(数据库版本)(GUI界面+数据库文件+源码)【独一无二】

在这里插入图片描述> &#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff…

爬虫提速!用Python实现多线程下载器!

✨ 内容&#xff1a; 在网络应用中&#xff0c;下载速度往往是用户体验的关键。多线程下载可以显著提升下载速度&#xff0c;通过将一个文件分成多个部分并行下载&#xff0c;可以更高效地利用带宽资源。今天&#xff0c;我们将通过一个实际案例&#xff0c;学习如何用Python实…

2024年软件系统与信息处理国际会议(ICSSIP 2024)即将召开!

2024年软件系统与信息处理国际会议&#xff08;ICSSIP 2024&#xff09;将于2024年10月25-27日在中国昆明举行。引领技术前沿&#xff0c;共谋创新未来。ICSSIP 2024将汇聚来自世界各地的专家学者&#xff0c;他们将在会上分享最新的研究成果、技术突破及实践经验。会议议题涵盖…

昇思25天学习打卡营第1天|快速入门-实现一个简单的深度学习模型

目录 实验环境 Jupyter云上开发环境使用 导包 处理数据集 网络构建 模型训练 评估模型性能 保存模型 加载模型 预测推理 实验环境 02-快速入门.ipynb (4) - JupyterLab (mindspore.cn) 规格&#xff1a;4u 16G 20G 镜像&#xff1a;py39-ms2.3.0rc1 特性&#xff1…

【计算机网络】IP分片实验

一&#xff1a;实验目的 1&#xff1a;理解IP数据报分片的工作原理。 2&#xff1a;理解IP协议报文类型和格式。 二&#xff1a;实验仪器设备及软件 硬件&#xff1a;RCMS-C服务器、网线、Windows 2019/2003操作系统的计算机等。 软件&#xff1a;记事本、WireShark、Chrom…

Pc端vue2实现横向纵向鼠标滚动布局

类似uniaapp中的scroll-view组件,可横向可竖向,样式需要自己跳整一下 横向:(鼠标按下滑动里面的元素,可滑动,滚动条和左右都可以调整) 纵向: 代码实现:主页面引入组件 <template><div><!-- 调用组件 --><!-- vertical 垂直 写宽高 例如: widt…

失业潮下,有人靠天工AI做副业年入10万?

前言 你好&#xff0c;我是咪咪酱 这篇文章总结2个AI副业项目&#xff0c;不用写代码&#xff0c;就能做的2个副业项目。 第一&#xff1a;AI生成微信表情包&#xff0c;上传到微信表情包平台等&#xff0c;坚持下去&#xff0c;会有可观的收入。 第二&#xff1a;AI生成连载…

MQ消息队列+Lua 脚本实现异步处理下单流程

具体实现和代码可参考我以前做过的笔记&#xff1a;《黑马点评》异步秒杀优化|消息队列 回顾一下下单流程&#xff1a; 用户发起请求 会先请求Nginx,Nginx反向代理到Tomcat&#xff0c;而Tomcat中的程序&#xff0c;会进行串行工作&#xff0c; 分为以下几个操作&#xff1…

KamaCoder 98. 所有可到达路径 + LC 797. All Paths From Source to Target

题目要求 给定一个有 n 个节点的有向无环图&#xff0c;节点编号从 1 到 n。请编写一个函数&#xff0c;找出并返回所有从节点 1 到节点 n 的路径。每条路径应以节点编号的列表形式表示。 输入描述 第一行包含两个整数 N&#xff0c;M&#xff0c;表示图中拥有 N 个节点&…