7月31日学习笔记 基于域名,Ip,端口多虚拟主机配置以及上线商城系统

news2024/12/29 10:48:25

一,基于域名的虚拟主机

效果
劫持域名访问指定的文件夹的目录
步骤
1. vim /usr/local/nginx/conf/nginx.conf
2. 创建新的目录 mkdir /html/devopt/
3. devops 目录下添加新的 index.html 文件
4. http 模块下添加新的 server 模块
1 . 设置监听的端口
2 . 设置域名
3 . 设置资源文件目录
4 . 设置路由 location 模块
server{
listen 80 ;
server www.zm.com;
root /html/devops;
location / {
index index.html;
}
}
5. 重载 nginx 服务
/usr/local/nginx/sbin/nginx -s reload
6. 设置 hosts 劫持
vim /etc/hosts
192 .168.71.161 www.zm.co
7. window 也可以如此设设置,但是要注意要设置读写权限

二,基于ip的虚拟主机

1. 效果,使用不同的 ip 地址访问不同的项目
2. 步骤
1. linux 系统中添加新的 ip 地址
ifconfig ens33:1 192 .168.71.163
2. 修改 nginx.conf 中的 server 模块中的 server_name 将域名修改为 ip 地址
server{
listen 80;
server_name 192.168.71.163;
root /html/devops/;
location / {
index index.html;
}
}
#
server{
listen 80;
server_name 192.168.71.161;

三,基于端口的虚拟主机

不同端口访问不同的项目,这种一般用于企业内部测试,不会用于发布项目
1. 效果
2. 步骤
1. 将两个 server ip 地址的都修改为相同
2. 两个 server 的监听端口一个设置为 80 一个设置为 8080
3. 重载 nginx
/usr/local/nginx/sbin/nginx -s reload
4. 开放端口或者防火墙
systemctl stop firewalld.service
============
firewall-cmd --zone = public --add-port = 8080 /tcp --
premament
5. 访问测试
curl 192 .168.71.161:80
curl 192 .168.71.161:8080

四,多虚拟主机的配置

一个服务器上同时部署多个项目 , 为了方便维护,可以将 server 模块单独抽
离出来创建 conf 文件,然后在主配置文件中使用 include 添加外部配置,这
样让操作更加模块化
1. 效果
2. 步骤
   1. nginx 目录下创建新的目录 conf.d
   mkdir /usr/local/nginx/conf.d/
   2. conf.d 目录中添加 devops.conf 文件
     touch /usr/local/nginx/conf.d/devops.conf
   3. 将在 nginx.conf 文件中创建的 server复制到devops.conf 文件中
    sed -n '36,42p' /usr/local/nginx/conf/nginx.conf >
    /usr/local/nginx/conf.d/devops.conf
   4. 删除 nginx.conf 中原有的自定义 server 模块
   5. nginx.conf 添加 include, 这里也可以写成相对路径,可以自由选择
    include /usr/local/nginx/conf.d/*.conf
   6. 重载 nginx 配置文件,测试
   /usr/local/nginx/sbin/nginx -s reload

五,上线商城系统

基于域名配置 server
1. 一个配置文件一般只有一个 http 模块
2. 一个 http 模块可以有多个 server 模块
3. 一个 server 模块就是一套 web 项目
4. 一个 server 模块中可以有多个 location
5. location 就是项目中的 url 路由
# 第一步
mkdir /zhangmin
# 第二部
echo "i am zhangmin" > /zhangmin/index.html
# 第三步
vim /usr/local/nginx/conf/nginx.conf
# 第三步
http{
server{
listen 80;
root /zhangmin;
server_name www.zhangmin.com;
location /{
inddx index.html;
}
}
server{...}
}
# 第四步
vim /etc/hosts
######################
10.1.1.10 www.zhangmin.com
########################
curl www.zhangmin.com
c:/windown/system32/drivers/etc/host/
取消只读,设置权限,如果还不行,就直接创建 i 新的 host 文件给她
覆盖
配置 dns 服务器。
一个 nginx 服务器中有多个 server 的时候是非常难于管理的,我们会将
每一个 server 单独创建一个文件保存,在主配置文件使用 include
mkdir /usr/local/nginx/conf.d/
touch /usr/local/nginx/conf.d/zhangmin.conf
sed -n 'server的行号p' /usr/local/nginx/conf/nginx.conf
> ..../zhangmin.conf
sed -i 'server的行号d' /usr/local/nginx/conf/nginx.conf
vim /usr/local/nginx/conf/nginx.conf
================
include /usr/local/nginx/conf.d/*.conf
/usr/local/nginx/sbin/nginx -s rdlaod
基于 ip 配置 server
为网卡添加一个新的 ip 地址
ifconfig ens33:1 10.1.1.11
server{
listen 80;
server_name 10.1.1.10;
root /zhangmin;
location /{
index index.html;
}
}
server{
listen 80;
servername 10.1.1.11;
root html;
location /{
index index.html;
}
}
基于端口配置 server
80, 可以省略,一般来说基于端口的配置,用于企业内部的项目测试
server{
listen
80;
server_name 10.1.1.10;
.....
}
server{
listen
8080;
server_name 10.1.1.10;
.....
}
systemctl stop firewalld
firelwall-cmd --zone=public --add-ports=8080/tcp --permament &&
firewall-cmd --reload;
部署一个 nodej 项目
1. 安装 nodejs
# 确定个是否已经安装 epel
yum -y install nodejs
node -v
2. 安装 npm
yum -y install npm
npm -v
3. 安装 vue
npm config set registry https://registry.npmmirror.com
npm install @vue/cli
4. 创建 eleme 项目
find / -name "vue"
/root/node_modules/.bin/vue -V
/root/node_modules/.bin/vue create eleme_web
5. eleme 项目使用 samba 共享
yum -y install samba
vim /etc/samba/smb.conf
[vue]
path = /root/eleme_web/
comment = this is a vue project use to eleme web
guest ok = no
writable = yes
useradd vueediter
smbpasswd -a vueediter
setfacl -m u:vueediter:rwx /root/eleme_web/
systemctl start nmb
systemctl start smb
systemctl stop firewalld
# window 上挂载安装
7. window 中对 samba 编辑
8. 在本地方法
9. 使用 frp 代理发布

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

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

相关文章

数字的位操作——7、9、479、564、231、342

7. 整数反转(中等) 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 示例 1&…

钢铁无组织排放的超低改造(朗观视觉)

朗观视觉小编观察发现:随着环保政策的日益严格和公众对环境质量要求的不断提高,钢铁行业作为重工业的代表,面临着巨大的环保压力。无组织排放作为钢铁企业环保治理的难点之一,如何实现超低排放成为行业关注的焦点。本文将从技术路…

MAC安装mysql以及配置环境变量

安装mysql 下载mysql,网址:MySQL :: Download MySQL Community Server 我下载的版本是mysql-9.0.1-macos14-arm64.dmg 打开,双击 一路点击继续安装即可; 最后需要给root设置密码后就安装完成了 但是打开终端输入mysql,依然显…

河南萌新联赛2024第(三)场:河南大学

传送门&#xff1a;河南萌新联赛2024第&#xff08;三&#xff09;场&#xff1a;河南大学_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ B 正则表达式 思路&#xff1a;模拟 代码&#xff1a; #include<bits/stdc.h> using namespace std; typedef long lo…

狗狗换毛期怎么办?家里狗毛遍地,狗毛空气净化器帮你解决

对于养狗家庭来说&#xff0c;换毛季节的到来无疑是一场家中的“毛发风暴”。特别是养如萨摩耶、金毛等大型长毛犬的朋友们&#xff0c;更是深有体会。每日即便精心梳理&#xff0c;家中仍难以避免地被层层狗毛所覆。狗狗时不时晃一下身体&#xff0c;抖动身上的毛发&#xff0…

【list的模拟实现】

list的模拟实现 小杨 list相关类要实现的接口 namespace yang {// List的节点类template<class T>struct ListNode{ListNode(const T& val T());ListNode<T>* _prev;ListNode<T>* _next;T _val;};//List的迭代器类template<class T, class Ref, cla…

土壤分析仪:解锁土壤奥秘,赋能现代农业的绿色引擎

在广袤无垠的大地上&#xff0c;土壤是生命之源&#xff0c;滋养着万物生长。然而&#xff0c;随着现代农业的快速发展和环境的不断变化&#xff0c;土壤的健康状况日益受到关注。如何科学、精准地了解土壤的性质与养分状况&#xff0c;成为现代农业可持续发展的关键。这时&…

ST-LINK未能串口keil识别的一个可能解决方案(前提驱动安装无问题)

打开这个软件&#xff0c;在点击清除之前&#xff0c;按住单片机复位按钮不放&#xff0c;点击清除按钮&#xff0c;等待3-5秒放开复位按钮&#xff0c;即可清除重置&#xff0c;若提示没识别到&#xff0c;多重复几次&#xff0c;即可重置&#xff0c;重置完成之后再回到烧写软…

兴业严选|朝阳优质好房合集 低至6.3折起~

7月25日&#xff0c;存款挂牌利率迎来今年首次下调。中国工商银行、中国农业银行、中国银行、中国建设银行四家大型商业银行从7月25日起&#xff0c;均下调了人民币存款挂牌利率。这是今年以来大型商业银行首次下调人民币存款利率&#xff0c;也是自2022年9月以来的第五次下调。…

不是ChatGPT模型,第一个GAI是ELIZA,你听说过吗?

人工智能&#xff08;Artificial Intelligence, AI&#xff09;的概念可以追溯到20世纪50年代&#xff0c;当时数学家和计算机科学家开始探讨如何让机器模拟人类智能。1956年&#xff0c;达特茅斯会议被认为是人工智能研究的正式起点。然而&#xff0c;生成式人工智能&#xff…

day7 Excel教程——如何用单元格格式给表格化个妆?(超多干货)

day7 如何用单元格格式给表格化个妆&#xff1f; 目录 1. 单元格内容 Excel中单元格内容分为文本、数值、逻辑值。在没有任何格式下&#xff1a; 文本&#xff1a;左对齐&#xff0c;不能计算 数值&#xff1a;右对齐&#xff0c;可以计算 逻辑值&#xff1a;对/错&#xff0…

XR-Frame 计算相机与场景物体的距离

如下哦 const cameraTransform this.scene.getElementById(camera).getComponent(transform)const modelTransform this.scene.getElementById(yourNodeId).getComponent("transform");if (cameraTransform.worldPosition.distanceTo(modelTransform.worldPosition…

Simulink代码生成:基本算数运算

文章目录 1 引言2 模块使用实例2.1 Add模块2.2 Product模块2.3 Gain模块 3 代码生成4 总结 1 引言 算数运算是Simulink中的一种基本运算&#xff0c;对应C语言中的算数运算符&#xff0c;包括加、减、乘、除和取模运算。本文研究这几种运算在Simulink的使用&#xff0c;以及生…

微服务架构革新:百度Jarvis2.0与云原生技术的力量

作者 | 商业广告平台团队 导读 从十几个模块到上千个微服务&#xff0c;百度如何构建业界最复杂的微服务系统&#xff1f;Jarvis平台&#xff0c;十年磨一剑&#xff0c;集服务治理、配置管理、链路追踪于一体&#xff0c;打造云原生控制中心。Jarvis2.0&#xff0c;多运行时架…

大型分布式B2B2C多用户商城7.0企业版源码分享【java语言、方便二次开发】

项目介绍 项目基于SpringBoot开发&#xff0c;运营端和商户端采用ElementVue&#xff0c;买家使用采用VueIviewnuxt服务端渲染。使用到的中间件有Redis、RabbitMQ、ElasticSearch、FastDFS、Mongodb等。主要功能包括有运营管理、商品管理、订单管理、售后管理、会员管理、财务…

【PyQt5】一文向您详细介绍 QRadioButton() 的作用

【PyQt5】一文向您详细介绍 QRadioButton() 的作用 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通本硕&am…

windows下安装gcc和make

目录 引言 第一种&#xff1a;自定义安装 下载和安装MinGw 将bin目录添加进环境变量 拷贝mingw-get.exe改名为make.exe 查看gcc和make命令是否安装成功 测试make和makefile 第二种&#xff1a;免安装&#xff0c;解压可用 下载mingw64 配置环境变量 拷贝mingw-get.e…

链码简介及MATLAB提取彩色图像链码

一、链码 链码&#xff08;又称为freeman code&#xff09;是一种通过带有给定方向的单位长度的线段序列来描述轮廓边界的方法,常被用来在图像处理、计算机图形学、模式识别等领域中表示曲线和区域边界。在二维图像中&#xff0c;链码可以表示为一系列的方向码&#xff0c;每个…

基于遗传算法的BP神经网络+代码解析

嗨&#xff0c;我是射手座的程序媛&#xff0c;期待和大家更多的交流与学习&#xff0c;欢迎添加3512724768。 基于遗传算法的BP神经网络代码解析 自己在2024年年初开始时&#xff0c;因为某些原因&#xff0c;了解到了基于遗传算法的神经网络。之前&#xff0c;对遗传算法并…

韦东山瑞士军刀项目自学之复习OS中断相关知识

和STM32无关&#xff0c;单纯是为了秋招复习一下中断的流程&#xff0c;其中涉及到内核态与用户态之间的转换&#xff0c;以及系统调用等等