一台阿里云服务器怎么部署多个网站?以CentOS系统为例
本文阿里云百科介绍如何在CentOS 7系统的ECS实例上使用Nginx搭建多个Web站点。本教程适用于熟悉Linux操作系统,希望合理利用资源、统一管理站点以提高运维效率的用户。比如,您可以在一台云服务器上配置多个不同分类的博客平台或者搭建多个Web站点实现复杂业务的网站系统。教程中,将在一台已部署LNMP环境的实例上同时搭建两个测试站点Testpage-1和Testpage-2,并访问对应的站点。
目录
前提条件
创建测试站点
配置Nginx
(可选)本地配置hosts
执行结果
前提条件
- 已注册阿里云账号。如还未注册,请先完成账号注册。
- 已创建分配公网IP的ECS实例,并部署了LNMP环境,具体操作请参见部署LNMP环境(CentOS 7)。
- ECS云服务器:aliyunbaike.com/go/ecs
- 实例规格:ecs.c6.large
- 操作系统:CentOS 7.8 64位
创建测试站点
- 远程连接已部署LNMP环境的ECS实例。
远程连接方式请参见通过密码或密钥认证登录Linux实例。
- 运行以下命令进入已配置好的网站根目录。
cd /usr/share/nginx/html
- 运行以下命令创建两个测试文件夹。文件夹中用于存放测试网站信息,即存放项目代码。
mkdir Testpage-1 mkdir Testpage-2
- 配置测试站点Testpage-1的信息。
- 运行以下命令进入Testpage-1。
cd /usr/share/nginx/html/Testpage-1/
- 运行以下命令创建并编辑
index.html
文件。vim index.html
- 按i进入编辑模式,输入以下测试内容。
编辑完成后,按Esc键,并输入:wq后按下回车键,保存并退出。Test page 1
- 运行以下命令进入Testpage-1。
- 配置测试站点Testpage-2的信息。
- 运行以下命令进入Testpage-2。
cd /usr/share/nginx/html/Testpage-2/
- 运行以下命令创建并编辑
index.html
文件。vim index.html
- 按i进入编辑模式,输入以下测试内容。
编辑完成后,按Esc键,并输入:wq后按下回车键,保存并退出。Test page 2
- 运行以下命令进入Testpage-2。
配置Nginx
- 运行以下命令查看nginx.conf配置文件。
在cat /etc/nginx/nginx.conf
http{}
模块内,查看include
配置信息。本示例中配置如下图所示,
include /etc/nginx/conf.d/*.conf;
表示Nginx将会从该路径下的所有.conf文件获取站点信息。 - 运行以下命令进入/etc/nginx/conf.d路径下。
cd /etc/nginx/conf.d
- 为测试站点Testpage-1创建并配置Nginx配置文件。
- 运行以下命令创建并编辑配置文件。
vim Testpage1.conf
- 按i进入编辑模式,输入以下内容。在注释内容处,替换服务器域名参数信息与项目路径参数信息。
编辑完成后,按Esc键,并输入:wq后按下回车键,保存并退出。server {listen 80;server_name testpage1.com; #此处使用测试域名。实际配置中使用您的服务器域名。#charset koi8-r;access_log /var/log/nginx/b.access.log main;location / {root /usr/share/nginx/html/Testpage-1; #测试站点路径。即您的项目代码路径。index index.html index.htm;}#error_page 404 /404.html;error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;} }
- 运行以下命令创建并编辑配置文件。
- 为测试站点Testpage-2创建并配置Nginx配置文件。
- 运行以下命令创建并编辑配置文件。
vim Testpage2.conf
- 按i进入编辑模式,输入以下内容。在注释内容处,替换服务器域名参数信息与项目路径参数信息。
编辑完成后,按Esc键,并输入:wq后按下回车键,保存并退出。server {listen 80;server_name testpage2.com; #此处使用测试域名。实际配置中使用您的服务器域名。#charset koi8-r;access_log /var/log/nginx/b.access.log main;location / {root /usr/share/nginx/html/Testpage-2; #测试站点路径。即您的项目代码路径。index index.html index.htm;}#error_page 404 /404.html;error_page 500 502 503 504 /50x.html;location = /50x.html {root /usr/share/nginx/html;} }
- 运行以下命令创建并编辑配置文件。
- 运行以下命令重启Nginx服务。
systemctl restart nginx
也可以直接安装宝塔Linux面板,然后在宝塔面板上安装多个网站,详细参考:https://www.aliyunfuwuqi.com/ecs/3465/
(可选)本地配置hosts
由于本教程中全部使用的测试信息,因此需要在本地的hosts文件中配置IP映射。如果您在配置多个站点信息时使用的是真实的服务器域名,请忽略该步骤。教程中本地物理机使用Windows操作系统。
- 访问C:\Windows\System32\drivers\etc目录。
- 复制hosts文件进行备份。
保留hosts - 副本文件,在测试完成后使用该文件恢复hosts文件的初始状态。
- 修改hosts文件。在文件末尾追加以下内容。
保存文件并退出。<ECS实例公网IP> testpage1.com <ECS实例公网IP> testpage2.com
- 返回Windows桌面,并按下Win + R组合键。
- 在运行对话框中输入cmd,并单击确定。
- 在命令行中运行以下命令,使hosts配置立即生效。
ipconfig /flushdns
执行结果
在本地主机打开浏览器,成功访问到两个测试站点。
- 访问
testpage1.com/
,查看Testpage-1站点内容如下所示。 - 访问
testpage2.com/
,查看Testpage-2站点内容如下所示。
至此多个Web站点已搭建成功。在实际搭建站点场景中,您只需要将配置文件中的域名与项目路径配置正确,即可实现多站点的访问。
本文转自阿里云官方文档。
相关文章:

一台阿里云服务器怎么部署多个网站?以CentOS系统为例
本文阿里云百科介绍如何在CentOS 7系统的ECS实例上使用Nginx搭建多个Web站点。本教程适用于熟悉Linux操作系统,希望合理利用资源、统一管理站点以提高运维效率的用户。比如,您可以在一台云服务器上配置多个不同分类的博客平台或者搭建多个Web站点实现复杂…...

history记录日期时间和日志记录操作
history命令能查看到操作日期和时间的配置方法: 1)在/etc/profile文件中添加一行: export HISTTIMEFORMAT"%F %T whoami " 2)保存后,执行加载命令: source /etc/profile 3)然后检…...
RocketMQ 单机源码部署 自定义配置文件和端口以及acl权限配置解析
思路 1、我们首先配置完 namesrv和broker和acl认证的配置文件,然后直接使用-c指定配置文件来启动程序,就会非常明了,用户名密码要大于6,第一个用户我测试着不知道为什么始终有最高权限,大家尽量不要吧第一个用户给别人…...

NuGet控制台命令初步使用
查看所有安装的包, 查找包,提示Nuget版本低;安装一个更高版本; 查看所有安装的包, 查找名字包含某字符串的包, 查找名字包含某字符串的包, 安装,使用-version指定版本,可…...

2023年国赛数学建模思路 - 案例:FPTree-频繁模式树算法
文章目录 算法介绍FP树表示法构建FP树实现代码 建模资料 ## 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 算法介绍 FP-Tree算法全称是FrequentPattern Tree算法,就是频繁模式树算法,…...
Positive Technologies:有针对性的攻击占非洲所有攻击的 68%
网络犯罪分子最常攻击的是非洲的金融公司和电信公司 Positive Technologies 分析了 2022–2023 年非洲遇到的各种网络安全威胁,并在圣彼得堡举行的第二届俄罗斯—非洲峰会上介绍了研究结果。根据我们的专家的介绍,非洲金融部门受到的网络攻击最多&#…...

Flink CDC系列之:TiDB CDC 导入 Elasticsearch
Flink CDC系列之:TiDB CDC 导入 Elasticsearch 一、通过docker 来启动 TiDB 集群二、下载 Flink 和所需要的依赖包三、在TiDB数据库中创建表和准备数据四、启动Flink 集群,再启动 SQL CLI五、在 Flink SQL CLI 中使用 Flink DDL 创建表六、Kibana查看Ela…...

未来混合动力汽车的发展:技术探索与前景展望
随着环境保护意识的增强和对能源消耗的关注,混合动力汽车成为了汽车行业的研发热点。混合动力汽车融合了传统燃油动力和电力动力系统,通过优化能源利用效率,既降低了燃油消耗和排放,又提供了更长的续航里程。本文将探讨混合动力汽…...

C进阶(2/7)前篇——指针进阶
前言:本文章讲解部分指针进阶内容。后续继续更新。 文章重点: 1. 字符指针 2. 数组指针 3. 指针数组 4. 数组传参和指针传参 目录 前言:本文章讲解部分指针进阶内容。后续继续更新。 指针初阶了解: 1.字符指针 1.1一道有关于字…...

C 内存分配器 mimalloc
有论文 … … https://www.microsoft.com/en-us/research/publication/mimalloc-free-list-sharding-in-action/ 可以减少内存碎片,微软研究院2019 年开源出的内存分配器 代码,适配linux...
leetcode做题笔记74搜索二维矩阵
给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非递减顺序排列。每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target ,如果 target 在矩阵中,返回 true ;否则,返回 false 。 思…...

深信服数据中心管理系统 XXE漏洞复现
0x01 产品简介 深信服数据中心管理系统DC为AC的外置数据中心,主要用于海量日志数据的异地扩展备份管理,多条件组合的高效查询,统计和趋势报表生成,设备运行状态监控等功能。 0x02 漏洞概述 深信服数据中心管理系统DC存在XML外部实…...
【Kubernetes】Kubernetes的Pod进阶
Pod进阶 一、资源限制和重启策略1. 资源限制2. 资源单位2.1 CPU 资源单位2.2 内存 资源单位 3. 重启策略(restartPolicy) 二、健康检查的概念1. 健康检查1.1 探针的三种规则1.2 Probe 支持三种检查方法 2. 示例2.1 exec 方式2.2 httpGet 方式2.3 tcpSock…...

都错了!机械硬盘远比SSD更省电 最多领先94%
相信在绝大多数人的认知中,SSD固态硬盘因为没有HDD机械硬盘那样的移动部件,不但更稳定,还更省电。 但是,存储服务商Scality的研究表明,恰恰相反,HDD更省电。 他们以美光6500 ION 30.72TB QLC SSD、希捷银河…...

tomcat设置PermSize
最近tomcat老是报错,查看了日志出现PermGen 内存不够用,重启tomcat后查询使用情况 通过启动参数发现没有设置 PermGen,继续通过jmap查看 jmap -heap 21179 发现99%已使用,而且默认是30.5M,太小了,这里设置成256M 1. 创建setenv.sh文件 在/usr/local/tomcat/bin目录下创建一个…...

JVM——分代收集理论和垃圾回收算法
一、分代收集理论 1、三个假说 弱分代假说:绝大多数对象都是朝生夕灭的。 强分代假说:熬过越多次垃圾收集过程的对象越难以消亡。 这两个分代假说共同奠定了多款常用的垃圾收集器的一致的设计原则:收集器应该将Java堆划分出不同的区域&…...
jar包独立运行的几种方式
linux启动jar包的方式,直接运行与守护进程运行 通常我们开发好的程序需要打成war/jar包,在linux运行,war包好说直接丢在tomcat中即可,如果开发好的程序为jar包的话,方式比较多 直接启动(java-jar xxx.jar) java -jar shareniu.jar 特点:当前ssh窗口被锁定&#x…...

[python] 安装numpy+scipy+matlotlib+scikit-learn及问题解决
这篇文章主要讲述Python如何安装Numpy、Scipy、Matlotlib、Scikit-learn等库的过程及遇到的问题解决方法。最近安装这个真是一把泪啊,各种不兼容问题和报错,希望文章对你有所帮助吧!你可能遇到的问题包括: ImportError: N…...
uniapp使用命令创建页面
package.js下创建命令 "scripts": {"add": "node ./auto/addPage.ts" } package.js同级目录创建auto/addPage.ts addPage.ts代码如下 const fs require(fs) const path require(path) const targetPath process.argv[2];// 要创建的目录地…...

Linux(进程控制)
进程控制 进程创建fork函数初识fork函数返回值写时拷贝fork常规用法fork调用失败的原因 进程终止进程退出码进程常见退出方法 进程等待进程等待必要性获取子进程status进程等待的方法 阻塞等待与非阻塞等待阻塞等待非阻塞等待 进程替换替换原理替换函数函数解释命名理解 做一个…...

Reactor和Proactor
reactor的重要组件包括:Event事件、Reactor反应堆、Demultiplex事件分发器、Eventhandler事件处理器。...
Python爬虫实战:研究urlunparse函数相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上的数据量呈现出指数级增长。如何从海量的网页数据中高效地获取有价值的信息,成为了学术界和工业界共同关注的问题。网络爬虫作为一种自动获取网页内容的技术,能够按照预定的规则遍历互联网上的网页,并提取出所需…...

FPGA 动态重构配置流程
触发FPGA 进行配置的方式有两种,一种是断电后上电,另一种是在FPGA运行过程中,将PROGRAM 管脚拉低。将PROGRAM 管脚拉低500ns 以上就可以触发FPGA 进行重构。 FPGA 的配置过程大致可以分为:配置的触发和建立阶段、加载配置文件和建…...
Docker容器化技术概述与实践
哈喽,大家好,我是左手python! Docker 容器化的基本概念 Docker 容器化是一种轻量级的虚拟化技术,通过将应用程序及其依赖项打包到一个可移植的容器中,使其在任何兼容 Docker 的环境中都能运行。与传统的虚拟机技术不同…...
【学习笔记】构造函数+重载相关
【学习笔记】构造函数重载相关 一、构造函数 构造函数在创建对象的过程就会执行,带参数与不带参数,带参数的构造函数会默认将成员变量赋值传进去的参数。 class Layer { private:int layer_id; // 层IDstd::string layer_json; // 层的JSON配置…...

【JVM】Java虚拟机(一)——内存结构
目录 一、简介 二、程序计数器 三、虚拟机栈 栈帧结构: 特点: 四、本地方法栈 特点: 五、堆 堆结构: 特点: 对象分配过程: 六、方法区 方法区结构: 特点: 运行时常量池…...
Git仓库的创建
Git服务器准备 假设Git所在服务器为Ubuntu系统,IP地址10.17.1.5。 一. 准备运行git服务的git用户,这里用户名就直接设定为git。 1. 创建一个git用户组,并创建git用户。 sudo groupadd git sudo useradd git -g git 2. 创建git用户目录&…...
Spring 中的disposableBean介绍
在 Spring 框架中,DisposableBean 是一个接口,用于定义 Bean 在被销毁前需要执行的清理逻辑。它是 Spring 容器生命周期回调机制的一部分。 🌱 什么是 DisposableBean DisposableBean 接口是 Spring 提供的一个标准接口,用于通知…...
HTML 中 class 属性介绍、用法
1、🔖 什么是 class class 是 HTML 元素的一个核心属性,用来为元素指定一个或多个类名。它在网页开发中承担三大作用: 🎨 连接样式(CSS):让元素应用预定义的视觉效果⚙️ 绑定行为(…...

学习经验分享【40】目标检测热力图制作
目标检测热力图在学术论文(尤其是计算机视觉、深度学习领域)中是重要的可视化分析工具和论证辅助手段,可以给论文加分不少。主要作用一是增强论文的可解释性与说服力:论文中常需解释模型 “如何” 或 “为何” 检测到目标…...