上线前端系统
上线一个静态的前端系统(续)
在eleme服务器上
启动服务
启动rpcbind
[root@eleme-static ~]# systemctl restart rpcbind
启动nfs
[root@eleme-static ~]# systemctl restart nfs
重启服务
启动smb
[root@static-server img]# systemctl start smb
启动nmb
[root@static-server img]# systemctl start nmb
挂载
[root@static-server img]# mount -t nfs 192.168.1.80:/static/img/ ~/eleme_web/public/img/
查看验证
切入到eleme_web/public/img目录
[root@static-server ~]# cd eleme_web/public/ img/
[root@static-server img]# ls
baidu.png
复制文件
[root@static-server img]# cd /usr/local/nginx/conf.d
[root@static-server conf.d]# cp -p dongdong.conf eleme.conf
修改配置文件
设置域名www.eleme.com,设置目录
[root@static-server conf.d]# vim eleme.conf
server{
listen 80;
server_name www.eleme.com;
root /eleme;
location / {
index index.html;
}
}
启动服务
启动nginx
[root@static-server conf.d]# /usr/local/nginx/sbin/nginx
启动npm
[root@static-server conf.d]# cd
[root@static-server ~]# cd eleme_web/
[root@static-server eleme_web]# nohup npm run serve&
[3] 4417
[root@static-server eleme_web]# nohup: 忽略输入并把输出追加到"nohup.out"
创建目录
[root@static-server ~]# cd /usr/local/nginx/conf.d
[root@static-server conf.d]# mkdir /eleme
复制内容
[root@static-server conf.d]# cp -r ~/eleme_web/dist/* /eleme/
重新加载服务
[root@static-server conf.d]# /usr/local/nginx/sbin/nginx -s reload
真机配置hosts文件
在真机找到hosts文件

修改文件内容,指定域名

浏览器访问测试

输入www.eleme.com进行访问到下面页面
新建三台主机
dymic-server1:192.168.1.50
dymic-server2:192.168.1.60
dymic-server3:192.168.1.50
分别在它们上面部署tomcat,部署tomcat前先配置java环境
安装wget
yum -y install wget
java环境的配置
官方下载:
https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz
使用wget下载
wget https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz
解压
tar -zxvf jdk-22_linux-x64_bin.tar.gz
转移目录
mv jdk-22.0.2 /usr/local/Java-22
配置profile文件
vim /etc/profile
echo " export JAVA_HOME=/usr/local/jdk-22
export PATH=$JAVA_HOME/bin:$PATH
让配置文件生效
source /etc/profile
查看版本号
java -version
部署tomcat
官方下载:
https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz
使用wget下载
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz
解压
tar -zxvf apache-tomcat-10.1.26.tar.gz
转移目录
mv apache-tomcat-10.1.26 /usr/local/tomcat/
切入/usr/local/tomcat目录
cd /usr/local/tomcat/bin/
执行文件
./startup.sh
到此三台dymic主机均部署完成
分别给三台dymic主机的index.jsp文件写入内容
dymic-server1:
echo "I am dynamic jsp java server page,number is 001" > /usr/local/tomcat/webapps/ROOT/index.jsp
dymic-server2:
echo "I am dynamic jsp java server page,number is 002" > /usr/local/tomcat/webapps/ROOT/index.jsp
dymic-server3:
echo "I am dynamic jsp java server page,number is 003" > /usr/local/tomcat/webapps/ROOT/index.jsp
浏览器访问
访问192.168.1.50:8080

访问192.168.1.60:8080

访问192.168.1.70:8080

回到原来主机
复制文件
切入conf.d目录
[root@static-server nginx]# cd conf.d/
找到eleme.conf文件
[root@static-server conf.d]# ls
dongdong.conf eleme.conf
将其复制为el.conf文件
[root@static-server conf.d]# cp eleme.conf el.conf
查看
[root@static-server conf.d]# ls
dongdong.conf el.conf eleme.conf
修改配置文件内容
修改el.conf 文件内容

[root@static-server conf.d]# vim el.conf
修改nginx.conf文件内容
[root@static-server conf.d]# vim /usr/local/nginx/conf/nginx.conf

修改hosts文件
虚拟机修改hosts文件
[root@static-server conf]# vim /etc/hosts

真机修改hosts文件

重新加载
[root@static-server conf.d]# /usr/local/nginx/sbin/nginx -s reload
浏览器访问测试
使用www.el.com访问
每刷新一次,显示不同的页面,实现了轮询



相关文章:
上线前端系统
上线一个静态的前端系统(续) 在eleme服务器上 启动服务 启动rpcbind [rooteleme-static ~]# systemctl restart rpcbind 启动nfs [rooteleme-static ~]# systemctl restart nfs 重启服务 启动smb [rootstatic-server img]# systemctl start smb…...
制作一个不依赖任何基础镜像的docker镜像
1、比如官方提供的hello-world镜像 #docker pull hello-world #docker images hello-world latest feb5d9fea6a5 2 years ago 13.3kB 可以看到这个镜像只有13.3kB 2、# docker run hello-world 只能打印一些信息 3、这个hello-world镜像的dockerfile就下面3行语…...
【拓扑排序topsort】——启动!!!
B3644 【模板】拓扑排序 / 家谱树 #include<bits/stdc.h> #define int long long #define fi first #define se second #define pb push_back #define PII pair<int,int > #define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) using namespace std; …...
计算机网络-http协议和https的加密原理
HTTP(HyperText Transfer Protocol,超文本传输协议)是用于在万维网(World Wide Web)上传输超文本的基础协议。它定义了客户端(通常是浏览器)和服务器之间的文本数据传输格式和规则。以下是HTTP的…...
共享`pexlinux`数据文件的网络服务
实验环境准备: 1.红帽7主机 2.要全图形安装 3.配置网络为手动,配置网络可用 4.关闭vmware DHCP功能 一、kickstart自动安装脚本制作 1.安装图形化生成kickstart自动脚本安装工具 2.启动图形制作工具 3.图形配置脚本 这里使用的共享方式是http࿰…...
HC32F4A0 10路串口UART 配置
HC32 小华MCU 使用一段时间了,反正芯片BUG 是比较多了,比如串口接收错误后导致再也无法接收,PWM模块无法输出 低电平 , CAN 接收错误导致 输出引脚 CAN_TXD 一直输出脉冲 。。。;好的一面也存在吧,IO 引脚…...
拯救PyCharm:击退IDE崩溃的终极策略
拯救PyCharm:击退IDE崩溃的终极策略 PyCharm,作为开发界的明星IDE之一,以其强大的功能和灵活的定制性深受广大开发者喜爱。然而,即便是这样一款卓越的开发工具,也可能会遇到崩溃的问题,影响开发效率和工作…...
深入解析Unix命令:掌握wc、whereis和which的使用技巧
目录 1. wc命令 2. whereis命令 3. which命令 结论 在Unix和类Unix系统中,wc、whereis和which是三个常用的命令行工具,每个都有着独特的功能和用途。让我们逐个来了解它们的作用和使用方法。 1. wc命令 wc命令是"word count"的缩写&…...
奥运会大规模使用中国AI大模型!
B站:啥都会一点的研究生公众号:啥都会一点的研究生 AI圈最近又发生了啥新鲜事? 巴黎奥运会大规模使用中国 AI 大模型 巴黎奥运会成为一场科技与体育的盛宴,其中包括了大量中国科技的应用。AI 技术将在多个方面发挥作用…...
Linux中的线程3
死锁 在Linux操作系统中,死锁(Deadlock)是指两个或多个进程(或线程)在执行过程中,因互相持有对方所需的资源而又都在等待对方释放资源,导致它们都无法继续执行下去的一种状态。这种僵局会浪费系…...
内网权限维持——利用WMI进行权限维持
文章目录 一、WMI事件订阅机制简介二、利用事件订阅进行权限维持三、防御方式 一、WMI事件订阅机制简介 WMI(Windows Management Instrumentation,Windows管理规范)是windows提供的一种能够直接与系统进行交互的机制,旨在为系统中…...
【数据结构算法经典题目刨析(c语言)】括号匹配问题(图文详解)
💓 博客主页:C-SDN花园GGbond ⏩ 文章专栏:数据结构经典题目刨析(c语言) 目录 一、题目描述 二、解题思路 三、代码实现 一、题目描述 二、解题思路 问题要求将三种类型括号匹配,其中包括顺序匹配和数量匹配 使用栈的后进先…...
浅谈 Spring AOP框架 (1)
文章目录 一、什么是 Spring AOP二、为什么要使用 Spring AOP三、AOP 的一些应用场景四、AOP 的组成五、如何使用 Spring AOP六、Spring AOP 的实现原理6.1、JDK 和 CGLIB 的区别 一、什么是 Spring AOP AOP (Aspect Oriented Programming) :面向切面编程ÿ…...
Linux 面试准备 - 2024
复习一下,资料来自慕课网课程 Linux 速成班和一些网上面试资料。 1. Linux 内核功能 1. 内存管理 2. 进程管理 3. 设备驱动程序 4. 系统调用和安全防护 2. 文件系统 - 一切皆文件 2.1 文件目录 /根目录etc配置文件bin必要命令usr 二级目录(非用户…...
C++笔记---类和对象(中)
1. 类的默认成员函数 默认成员函数就是用户没有显式实现,编译器会自动生成的成员函数称为默认成员函数。 一个类,我们不写的情况下编译器会默认生成以下6个默认成员函数,分别为:构造函数,析构函数,拷贝构…...
【C++】入门基础知识
河流之所以能够到达目的地,是因为它懂得怎样避开障碍。💓💓💓 目录 ✨说在前面 🍋知识点一:C的发展历史 • 🌰1.C发展历史 • 🌰2.C的迭代与更新 • 🌰3.编程语言排…...
AI的应用场景和未来展望
AI(人工智能)的应用场景广泛且多样,已经深入到我们生活的方方面面,成为现代社会不可或缺的一部分。 AI的应用场景 1、通用软件与工具型应用 办公软件:如钉钉、飞书等,通过AI技术提供内容生成与摘要、智能…...
vim、sublime、notepad文本编辑器的使用
VIM: Windows上配置gvim并作为C和C的IDE Windows上配置gvim并作为C和C的IDE | Reasuon sublime notepad...
PyCharm中的外部更改识别:终极解决方案指南
标题:PyCharm中的外部更改识别:终极解决方案指南 引言 PyCharm,作为JetBrains公司开发的集成开发环境(IDE),以其强大的功能和高效的代码编辑体验而广受开发者喜爱。然而,在开发过程中…...
Qt——QTCreater ui界面如何统一设置字体
第一步:来到 ui 设计界面,鼠标右键点击 改变样式表 第二步:选择添加字体 第三步:选择字体样式和大小,点击 ok 第四步:点击ok或apply,完成设置...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...
selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...
