tomcat web实测

1.配置虚拟主机

复制代码
[root@web03 ~]# cat /app/tomcat/conf/server.xml
​
</Host>
    <Host name="zrlog.net"  appBase="/code/zrlog"
 unpackWARs="true" autoDeploy="true">
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
 prefix="zrlog_access_log" suffix=".txt"
 pattern="%h %l %u %t &quot;%r&quot; %s %b" />
      </Host>

2.配置数据库

前置步骤:https://blog.csdn.net/Bert_Field/article/details/153866201?spm=1001.2014.3001.5502

复制代码
mysql> create database zrlog charset utf8;
​
#'zrlog'@'%' 表示允许用户 zrlog 从任意主机(% 是通配符)连接到 MySQL。
#密码为 'zrlog',这是一个非常简单的密码。
mysql> create user 'zrlog'@'%' identified by 'zrlog';
​
#ALL PRIVILEGES 表示授予所有权限(包括 SELECT, INSERT, UPDATE, DELETE, DROP, CREATE USER, SHUTDOWN 等)。
#*.* 表示对所有数据库和所有表生效。
#这相当于给了该用户数据库管理员(DBA)级别的权限。
mysql>  grant all privileges on *.* to 'zrlog'@'%';
​
mysql> flush privileges;

3.部署

复制代码
[root@web03 ~]# wget https://dl.zrlog.com/release/javax-war/zrlog.war
[root@web03 ~]# mv zrlog.war ROOT.war
[root@web03 ~]#/app/tomcat/bin/startup.sh

4.多节点部署

复制代码
[root@web02 ~]# mkdir /app
​
[root@web02 ~]# wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.111/bin/apache-tomcat-9.0.111.tar.gz
​
[root@web02 ~]# tar xf apache-tomcat-9.0.111.tar.gz -C /app
[root@web02 ~]# ln -s /app/apache-tomcat-9.0.111/ /app/tomcat
[root@web02 ~]# rsync -avz root@172.16.1.9:/app /
[root@web02 ~]#/app/tomcat/bin/startup.sh 

5.多节点共享存储

复制代码
[root@nfs ~]# cat /etc/exports
/data/zrlog 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)
​
[root@nfs ~]# mkdir /data/zrlog
[root@nfs ~]# chown -R www.www /data/zrlog
[root@nfs ~]# systemctl restart nfs-server

记录静态资源存放位置

复制代码
#检查位置
[root@web03 attached]# ls /code/zrlog/ROOT/attached/
image
[root@web03 attached]# mount -t nfs 172.16.1.32:/data/zrlog /code/zrlog/ROOT/attached/
[root@web02 zrlog]# rsync -avz root@172.16.1.9:/code/zrlog/ /code/zrlog/
[root@web02 ~]#  mount -t nfs 172.16.1.32:/data/zrlog /code/zrlog/ROOT/attached/

把域名解析切到另一台机器看静态资源是否能共享

复制代码
#检查nfs共享挂载目录上是否存在静态资源
[root@nfs ~]# ls /data/zrlog
image

----测试成功----

----注意----

挂载后会清空/attached 测试请重新创建博客OR选择在挂载后创建

6.集群部署

6.1反向代理多机实践

复制代码
#配置nginx负载均衡
[root@proxy01 ~]# cat /etc/nginx/conf.d/proxy_zrlog.conf
upstream java {
 server 172.16.1.8:8080;
 server 172.16.1.9:8080;
 }
 
 server {
    server_name mingyuandemo.top;
    listen 80;
    location / {
        proxy_pass http://java;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
 }
复制代码
#检查语法&重载
[root@proxy01 ~]# nginx -t
​
[root@proxy01 ~]# systemctl reload nginx

域名解析切换到负载均衡节点

----负载均衡测试OK----

6.2集群配置https

购买域名

证书申请

证书下载

复制代码
#编辑负载均衡,添加ssl证书,http-->https
[root@proxy01 ~]# cat /etc/nginx/conf.d/proxy_zrlog.conf
upstream zrlog {
 server 172.16.1.8:8080;
 server 172.16.1.9:8080;
 }
​
server {
 listen 443 ssl;
 ssl_certificate  ssl/mingyuandemo.top.pem;
 ssl_certificate_key ssl/mingyuandemo.top.key;
  ssl_session_timeout 5m;
 server_name mingyuandemo.top;
 location / {
 proxy_pass http://mingyuandemo.top;
 proxy_set_header Host $http_host;
 }
 }
 server {
 listen 80;
 server_name mingyuandemo.top;
 return 302 https://$server_name$request_uri;
 }
 
 [root@proxy01 ~]# nginx -t
​
[root@proxy01 ~]# systemctl reload nginx

----测试OK----

相关推荐
Yeniden8 分钟前
Deepeek用大白话讲解 --> 迭代器模式(企业级场景1,多种遍历方式2,隐藏集合结构3,Java集合框架4)
java·开发语言·迭代器模式
景川呀17 分钟前
Java的类加载器
java·开发语言·java类加载器
yaoxin52112318 分钟前
274. Java Stream API - 过滤操作(filter):筛选你想要的数据
java·windows
子洋20 分钟前
AI Agent 介绍
前端·人工智能·后端
小白勇闯网安圈21 分钟前
Java面向对象(上)
java
一点晖光21 分钟前
maven推送项目到harhor私有仓库
java·maven
徐同保24 分钟前
使用n8n自动发邮件
前端
代码or搬砖42 分钟前
MySQL窗口函数 OVER()讲解
java·mysql
dly_blog1 小时前
setup 函数完整指南!
前端·javascript·vue.js
霍理迪1 小时前
基础CSS语法
前端·css