更新时间:2025-08-06 GMT+08:00
Nginx服务配置多站点
在一台ECS实例中配置多个Web站点,可以有效节约运营成本,便捷管理多个网站(包括更新软件、配置安全设置、备份数据等),根据各个网站的需求变化,可以灵活调整资源分配等。本文介绍如何在Linux系统的ECS实例上使用Nginx搭建多个Web站点。
前提条件
已创建分配公网IP的ECS实例,并部署了LNMP环境。具体操作请参见搭建LNMP环境。
创建测试站点
- 远程连接已部署LNMP环境的ECS实例。
远程连接方式请参考Linux ECS登录方式概述。
- 执行以下命令,进入已配置好的网站根目录。
cd /usr/share/nginx/html
- 执行以下命令,创建两个测试文件夹。
sudo mkdir page-one sudo mkdir page-two
- 配置测试站点page-one的信息。
- 执行以下命令,进入page-one。
cd /usr/share/nginx/html/page-one/
- 执行以下命令,创建并编辑index.html文件。
sudo vim index.html
- 按i键进入编辑模式,输入以下测试内容。
test page one
- 编辑完成后,按Esc键,输入:wq后按下回车键,保存并退出。
- 执行以下命令,进入page-one。
- 配置测试站点page-two的信息。
- 执行以下命令,进入page-two。
cd /usr/share/nginx/html/page-two/
- 执行以下命令,创建并编辑index.html文件。
sudo vim index.html
- 按i键进入编辑模式,输入以下测试内容。
test page two
- 编辑完成后,按Esc键,输入:wq后按下回车键,保存并退出。
- 执行以下命令,进入page-two。
配置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
- 为测试站点page-one创建并配置Nginx配置文件。
- 执行以下命令,创建并编辑配置文件。
sudo vim page-one.conf
- 按i键进入编辑模式,输入以下内容。
在注释内容处,替换服务器域名参数信息与项目路径参数信息。
server { listen 80; server_name linux1.com; #此处使用测试域名。实际配置中使用您的服务器域名。 location / { root /usr/share/nginx/html/page-one; #测试站点路径。即您的项目代码路径。 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; } }
- 编辑完成后,按Esc键,输入:wq后按下回车键,保存并退出。
- 执行以下命令,创建并编辑配置文件。
- 为测试站点page-two创建并配置Nginx配置文件。
- 执行以下命令,创建并编辑配置文件。
sudo vim page-two.conf
- 按i键进入编辑模式,输入以下内容。
在注释内容处,替换服务器域名参数信息与项目路径参数信息。
server { listen 80; server_name linux2.com; #此处使用测试域名。实际配置中使用您的服务器域名。 location / { root /usr/share/nginx/html/page-two; #测试站点路径。即您的项目代码路径。 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; } }
- 编辑完成后,按Esc键,输入:wq后按下回车键,保存并退出。
- 执行以下命令,创建并编辑配置文件。
- 执行以下命令,重启Nginx服务。
sudo systemctl restart nginx
父主题: 配置多站点