基于域名+基于ip+基于端口的虚拟主机+上线商务系统

news2025/1/12 6:16:42

一、回顾

1.jdk环境

tomcat服务器需要jdk环境

版本对应

​ tomcat9==>jdk1.8

配置系统变量JAVA_HOME

sed -i '$aexport JAVA_HOME=/usr/local/jdk22/'  /etc/profile
sed -i '$aexport PATH=$JAVA_HOME/bin:$PATH' /etc/profile
​
source /etc/profile
​
java -version
javac -version
​
spring-boot3 ==>jdk17以上的版本

2.nginx平滑升级

1.下载新的nginx源码包

2.解压

3.配置 要求prefix指定的安装路径和以前的nginx安装位置一样

4.make && make install 在sbin出现两个可执行文件 nginx和nginx.old

5.查看旧的nginx进程,包含一个master和work进程的id

6.kill -USR2 旧的nginx的master进程id,开辟了一个复杂的线程

7.kill -WINCH优雅停用旧的nginx的子进程

8.kill -QUIT 优雅退出旧的nginx的master进程

二、基于域名的虚拟主机

1.创建项目,用于部署在nginx中发布到网络

[root@static-server ~]# mkdir /hui

2.在/hui/目录下创建一个index.html

[root@static-server ~]# echo "hello,I am hfy" > /hui/index.html[root@static-server ~]# cat /hui/index.htmlhello,I am hfy

3.配置nginx.conf文件

[root@static-server ~]# vim /usr/local/nginx/conf/nginx.conf

4.启动服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

5.修改/etc/hosts文件

[root@static-server ~]# vim /etc/hosts

6.测试

在本机上可以访问域名能看到内容

[root@static-server ~]# curl www.hui.comhello,I am hfy

在浏览器上输入域名www.hui.com访问不到内容

7.使域名www.hui.com的测试内容能在浏览器上被访问到

(1)在C:\Windows\System32\drivers\etc中找到hosts文件

(2)修改hosts文件

(3)测试

然后用浏览器访问域名:www.hui.com,就可以访问到内容了

三、多虚拟主机的配置

将刚才配置的server模块保存到一个新的文件中

1.创建文件

[root@static-server ~]# mkdir /usr/local/nginx/conf.d/

2.用sed查看刚才在nginx.conf文件中配置的server模块

[root@static-server ~]# sed -n '33,41p' /usr/local/nginx/conf/nginx.conf

 server{

                   listen	80;

	           server_name  www.hui.com;

                   root         /hui;

                   location / {

                         index    index.html;

                    }

              }

3.将server模块的内容重定向到新建的文件中(/usr/local/nginx/conf.d/hui.conf)

[root@static-server ~]# sed -n '33,41p' /usr/local/nginx/conf/nginx.conf > /usr/local/nginx/conf.d/hui.conf

[root@static-server ~]# cat /usr/local/nginx/conf.d/hui.conf 

  server{

                   listen	80;

	           server_name  www.hui.com;

                   root         /hui;

                   location / {

                         index    index.html;

                    }

              }

4.用sed删掉之前在nginx.conf中配置的server模块

[root@static-server ~]# sed -i '33,41d' /usr/local/nginx/conf/nginx.conf

5.查看原来的配置文件,发现已经删掉了配置的server模块

[root@static-server ~]# cat /usr/local/nginx/conf/nginx.conf

6.重启服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

7.进行测试

用浏览器访问域名www.hui.com,就发现会访问到本机原来的内容

8.补充

include ../conf.d/*.conf;

使用类似“include /etc/nginx/conf.d/*.conf;”的指令,可以将“/etc/nginx/conf.d/”目录下所有以“.conf”结尾的文件的配置内容引入当前配置。这样可以将配置进行模块化管理,方便维护和扩展。

(1)在配置文件中添加:include ../conf.d/*.conf;

[root@static-server ~]# vim /usr/local/nginx/conf/nginx.conf

(2)重启服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

(3)在浏览器上进行测试

四、基于不同IP的虚拟主机

1.给本机网卡添加新的IP

2.修改配置文件

[root@static-server ~]# vim /usr/local/nginx/conf/nginx.conf

[root@static-server ~]# vim /usr/local/nginx/conf.d/hui.conf

3.启动服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

4.在浏览器上进行测试

(1)访问192.168.2.25时,出现的内容是本机的

(2)访问192.168.2.30时,显示的内容是域名www.hui.com的内容

五、基于端口的虚拟主机

1.设置两个server都基于相同的ip

都使用192.168.2.25这个ip地址

2.修改配置文件

[root@static-server ~]# vim /usr/local/nginx/conf.d/hui.conf

3.启动服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

4.出现冲突

nginx: [warn] conflicting server name "192.168.2.25" on 0.0.0.0:80, ignored

此警告表示在 Nginx 配置中存在服务器名称冲突的情况。Nginx

在处理 HTTP 请求时,会根据请求头中的 Host 变量与配置文件中

的 server_name 进行匹配来决定由哪个 server 处理请求。当出现

多个相同的 server_name 时,就会产生冲突。

5.解决冲突

为了解决冲突,所以我们给www.hui.com设置8080端口

[root@static-server ~]# vim /usr/local/nginx/conf.d/hui.conf

6.重启服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx -s reload

7.使用浏览器访问

(1)访问本机IP(192.168.2.25)时,就会出现本机的内容

(2)访问本机IP(192.168.2.25)加8080端口时,就会出现www.hui.com的内容

六、上线商务系统

上线一个静态的前端系统,生成一个,发布到nginx中

nodejs 安装npm 添加vue模块,使用vue创建vue3项目,构建静态资源,将静态资源添加到nginx项目

环境准备

1.在安装nodejs之前,需要检查是否安装了epel

检查是否安装nodejs,这也是一个运行环境

[root@static-server ~]# yum list installed| grep epelepel-release.noarch 7-11 @extras

2.安装nodejs

[root@static-server ~]# yum -y install nodejs

3.查看nodejs的版本

[root@static-server ~]# node -v

v16.20.2

4.安装npm

[root@static-server ~]# yum -y install npm

5.查看npm版本

[root@static-server ~]# npm -v8.19.4

npm和rpm一样-包管理器,npm用于nodejs开发的软件

6.使用淘宝镜像

默认npm的下载文件的链接在国家域外,下载很慢,所以要使用淘宝的镜像

[root@static-server ~]# npm config set registry https://registry.npmmirror.com

7.安装vue

[root@static-server ~]# npm install @vue/cli

vue命令使用不了

[root@static-server ~]# vue

-bash: vue: 未找到命令

8.在整个文件系统中查找名称为“vue”的文件或目录

[root@static-server ~]# find / -name "vue"

/root/node_modules/vue

/root/node_modules/.bin/vue

[root@static-server ~]# ls -l /root/node_modules/.bin/vue

lrwxrwxrwx. 1 root root 22 7月 31 14:41 /root/node_modules/.bin/vue -> ../@vue/cli/bin/vue.js

9.查看vue的版本信息

[root@static-server ~]# /root/node_modules/.bin/vue -V@vue/cli 5.0.8

10.创建vue项目

[root@static-server ~]# /root/node_modules/.bin/vue create eleme_web

(1)选择第三个,回车

(2)选中Router和Vue这两个选项,然后回车

(3)一直回车

(4)这样就是创建好vue项目了

(5)然后进到eleme_web下,启动服务(npm run serve)

(6)用浏览器访问:

11.将eleme项目使用samba共享

配置samba

(1)安装samba

[root@static-server eleme_web]# yum -y install samba

(2)编辑配置文件

[root@static-server eleme_web]# vim /etc/samba/smb.conf

(3)创建用户

[root@static-server eleme_web]# useradd vueediter

[root@static-server eleme_web]# smbpasswd -a vueediter

(4)为该用户在文件夹中添加读写权限

[root@static-server eleme_web]# setfacl -m u:vueediter:rwx /root/eleme_web/

(5)启动服务

[root@static-server eleme_web]# systemctl start nmb[root@static-server eleme_web]# systemctl start smb

12.实现windows和linux之间的文件共享

在windows上找到此电脑,完成后就可以实现文件共享了

13.创建文件

[root@static-server eleme_web]# mkdir public/img

[root@static-server eleme_web]# mkdir public/video

[root@static-server eleme_web]# mkdir public/music

[root@static-server eleme_web]# tree public/

public/├── favicon.ico├── img├── index.html├── music└── video

14.实现linux和linux之间的文件共享

部署nfs服务器

(1)新建一台机器IP为:192.168.2.31
(2)安装rpc和nfs

[root@elemestatic ~]# yum -y install rpcbind.x86_64

[root@elemestatic ~]# yum -y install nfs-utils.x86_64

(3)修改配置文件

root@elemestatic ~]# vim /etc/exports

/static/img/ *{rw,sync}

(4)创建文件

[root@elemestatic ~]# mkdir -p /static/img

(5)启动服务

[root@elemestatic ~]# systemctl start rpcbind.service

[root@elemestatic ~]# systemctl start nfs

(6)查看端口

[root@elemestatic ~]# netstat -lnput|grep nfs

[root@elemestatic ~]# netstat -lnput|grep rpc

(7)去192.168.2.25服务器

[root@static-server eleme_web]# yum -y install nfs-utils.x86_64

(8)挂载

[root@static-server eleme_web]# mount -t nfs 192.168.2.31:/static/img public/img/

(9)回到192.168.2.31服务器上
(10)进入到/static/img目录下,拖进去一张图片

[root@elemestatic ~]# cd /static/img

[root@elemestatic img]# rz -E

rz waiting to receive.

[root@elemestatic img]# ls

qq图片.jpg

(11)然后回到192.168.2.25服务器
(12)查看/public/img目录下的内容

[root@static-server eleme_web]# ls public/img/

qq图片.jpg

就会看到已经将图片同步过来了

15.对eleme_web页面的图片进行修改

(1)192.168.2.25服务器
(2)进到src目录下

[root@static-server eleme_web]# cd src

[root@static-server src]# ls views/AboutView.vue HomeView.vue

(3)修改配置文件

[root@static-server src]# vim views/HomeView.vue

将public/img中的图片粘贴进去

(4)启动服务

要在eleme_web下启动服务

(5)浏览器访问 http://192.168.2.25:8081/

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

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

相关文章

LeetCode | 441 | 排列硬币 | 二分查找

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 今天分享的是LeetCode中一道标签为简单的算法题,本质是一道数学题 文章目录 1.题目描述2.题解2.1 公式解法2.2 暴力解法2.3 二分查找 LeetCode链接&#…

【 问题 】 AT32 F413CB 设置SRAM大小为64KB 导致Flash后64KB代码执行变慢 解决办法

背景 AT32的SRAM可以设置为16KB/32KB/64KB的不同大小,设置SRAM大小将导致Flash的部分空间的读写速度减缓,如下图: 这个问题看似不是很大,但是当运行一些很保证实时性,速度性的代码时,就会产生一些问题。 …

react-日期选择器封装

文件 import { useMemo, useState, useEffect } from "react" import dayjs, { Dayjs } from "dayjs" import "dayjs/locale/zh-cn" import "./App.css" dayjs.locale("zh-cn")function SimpleCalendar() {// 当前时间对象…

【数值计算方法】数值积分微分-python实现-p2

原文链接:https://www.cnblogs.com/aksoam/p/18279394 更多精彩,关注博客园主页,不断学习!不断进步! 我的主页 csdn很少看私信,有事请b站私信 博客园主页-发文字笔记-常用 有限元鹰的主页 内容&#xf…

基于ThinkPHP开发的校园跑腿社区小程序系统源码,包含前后端代码

基于ThinkPHP开发的校园跑腿社区小程序系统源码,包含前后端代码 最新独立版校园跑腿校园社区小程序系统源码 | 附教程 测试环境:NginxPHP7.2MySQL5.6 多校版本,多模块,适合跑腿,外卖,表白,二…

【Android】Kotlin 实现底部弹框日历组件

需求 如下图所示, 底部弹出日历组件 原生插件使用的有一个好处是可以根据你的系统语言切换插件内的语言, 刚好我们这个app面向的国外用户, 而产品对日历组件的日期显示有特别要求, 因此这无疑减少了我们切换语言的开发工作量 代码 1. custom_bottom_datepicker.xml <R…

Java小白入门到实战应用教程-权限修饰符

Java小白入门到实战应用教程-权限修饰符 前言 在前面的内容中我们其实已经接触到了权限修饰符&#xff1a;public 在java中权限修饰符除了public外&#xff0c;还有private、protected、默认权限。 权限修饰符可用来修饰类、成员变量、方法(函数)。 其中修饰类只能用publi…

springboot的表现层/控制层controller开发

第一步&#xff1a;新建文件和注入业务层对象 需要使用的注解&#xff1a; 第一个声明是restful风格开发 第二个是需要设置网页访问路径 RestController RequestMapping("/fuels")//http://localhost/fuels注入服务层对象&#xff1a; Autowiredprivate FuelServ…

晶振输出频率偏差过大的影响

晶体振荡器作为电子系统中的关键部件之一&#xff0c;其输出频率的准确性直接影响着整个系统的性能。无论是实时响应系统还是通信设备&#xff0c;都需要高度精确的频率源来维持其正常运作。本文将探讨晶振输出频率偏差过大会带来的影响&#xff0c;并简要介绍频率稳定性的概念…

【docker】下载docker 容器

1.下载地址&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/rhel/9/x86_64/stable/ 2.配置仓库拉取容器镜像 docker镜像 通过软件仓库下载但不安装 挂载并放入一个东西里面&#xff08;存放rpm软件包&#xff0c;并不是软件仓库&#xff09; 采集rpm数据的…

VSCode安装和配置

一、VScode下载和安装 下载 Visual Studio Code - Mac、Linux、Windows 下载完成之后傻瓜式安装即可 二、 左侧活动栏介绍 三、安装中文插件 先下载&#xff0c;在重启即可 四、配置C语言运行环境 1、Code Runner 记得勾选图中的两个选项 2、安装C/C插件 3、安装编译器MinGW…

cpp学习记录05:类和对象02

继承 面向对象的语法思想都差不多继承的好处就是方便 语法&#xff1a; class 子类 : 继承方式 父类 继承方式 公共继承&#xff1a;继承的内容权限不变 保护继承&#xff1a;继承的内容权限变为protected 私有继承&#xff1a;继承的内容权限变为private 这三类继承都不…

1000W长连接,如何建立和维护?千万用户IM 架构设计

1000W长连接&#xff0c;如何建立和维护&#xff1f;千万用户IM 架构设计 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格&#xff0c;遇到很多很重要的架构类/设计类…

哈夫曼树及哈夫曼编码

目录 一. 前言 二. 哈夫曼树的构造 三. 哈夫曼编码 一. 前言 在学习哈夫曼树之前&#xff0c;我们先了解几个基本概念。 1.路径&#xff1a;从树中一个结点到另一个结点之间的分支构成这两个结点之间的路径。 2.结点的路径长度&#xff1a;两结点间路径上的分支数。 3.树的…

Visual Studio 2022 安装步骤

一、官方下载 下载地址&#xff1a;https://visualstudio.microsoft.com/zh-hans/vs/ 下载完成&#xff0c;得到VisualStudioSetup.exe文件 二、安装 Visual Studio 2022 由于我有 Professional 版本的密钥&#xff0c;因此安装Professional 版本。 Visual Studio 2022 Profes…

libtorch学习历程(一):libtorch2.4.0+opencv4.10+Qt6安装

开发环境 Win11RTX4060CUDA12.1libtorch 2.4.0 ,CUDA12.1,release版VS2022opencv4.10版本Qt 6.6.3 软件下载 libtorch下载 直接去pytorch官网下载即可&#xff0c;根据需要下载realease与debug版。 而CUDA的版本则查看CUDA版本教程&#xff0c;来选择合适的。 debug版与r…

大数据核心概念与技术架构简介

大数据基本概念 大数据是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合&#xff0c;是具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。 大数据特征&#xff1a; 数据量大&#xff1a;一般以P&#xff08;1000个TB&a…

详解DDR3原理以及使用Xilinx MIG IP核(app 接口)实现DDR3读写测试

系列文章目录 &#xff08;1&#xff09;详解SDRAM基本原理以及FPGA实现读写控制 文章目录 系列文章目录一、DDR简介1.1 什么是 SDRAM、DDR、DDR2、DDR31.2 SDRAM、DDR、DDR2、DDR3核心频率、工作频率以及等效频率的计算1.3 DDR3带宽以及容量的计算 二、MIG IP核的介绍三、MIG…

Datawhale AI夏令营第三期 AI+物质科学学习记录 Task2 RNN建模SMILES进行反应产率预测

引导 如何将化学知识转化为计算机可识别的形式 提到化学应该会想到元素周期表&#xff0c;分子式&#xff0c;化学反应方程等等&#xff0c;化学这门学科的知识和内容都有专有符号记录的&#xff0c;但计算机不能理解&#xff0c;所以需要将这些符号让计算机能理解 Ai4Chemi…

python orm框架有哪些

ORM概念 ORM&#xff08;Object Ralational Mapping&#xff0c;对象关系映射&#xff09;用来把对象模型表示的对象映射到基于SQL的关系模型数据库结构中去。这样&#xff0c;我们在具体的操作实体对象的时候&#xff0c;就不需要再去和复杂的SQL语句打交道&#xff0c;只需简…