当前位置: 首页 > 产品大全 > 阿里云CentOS 7服务器多端口部署多个Web站点指南

阿里云CentOS 7服务器多端口部署多个Web站点指南

阿里云CentOS 7服务器多端口部署多个Web站点指南

在阿里云CentOS 7服务器上通过不同端口部署多个Web站点,是一种经济高效且灵活的资源利用方式,尤其适用于测试、轻量级应用或内部服务。本文将详细介绍从环境准备、Web服务配置到站点部署的完整流程。

一、环境准备与基础配置

  1. 服务器准备:确保已购买并启动一台阿里云ECS实例,操作系统为CentOS 7,并通过SSH成功登录。
  1. 安全组配置:登录阿里云控制台,进入ECS实例的安全组设置。添加入方向规则,开放计划使用的端口(如8080、8081、8082等),协议类型为HTTP(80) 或自定义TCP(建议同时开放对应端口),授权对象为0.0.0.0/0(或在生产环境中限定IP范围)。这是关键一步,否则外部无法访问。
  1. 系统更新与防火墙
  • 更新系统:sudo yum update -y

- 若使用firewalld防火墙,开放端口并重载:
`bash
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=8081/tcp
# 添加更多端口...

sudo firewall-cmd --reload
`

  • 若使用iptables,需相应配置。

4. 安装Web服务器:这里以Nginx为例(也可选用Apache)。
`bash
sudo yum install epel-release -y
sudo yum install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
`

二、规划与创建站点目录及测试页面

假设我们要部署两个站点:

  • 站点A:使用端口8080,文档根目录 /var/www/siteA
  • 站点B:使用端口8081,文档根目录 /var/www/siteB

创建目录和测试页面:
`bash
sudo mkdir -p /var/www/siteA
sudo mkdir -p /var/www/siteB

为站点A创建测试首页

sudo bash -c 'echo "

Welcome to Site A (Port 8080)

" > /var/www/siteA/index.html'
# 为站点B创建测试首页 sudo bash -c 'echo "

Welcome to Site B (Port 8081)

" > /var/www/siteB/index.html'

设置目录权限(确保Nginx用户可读)

sudo chown -R nginx:nginx /var/www/siteA
sudo chown -R nginx:nginx /var/www/siteB
sudo chmod -R 755 /var/www
`

三、配置Nginx多端口站点

Nginx的主配置文件为 /etc/nginx/nginx.conf。通常,我们会在 /etc/nginx/conf.d/ 目录下为每个站点创建独立的配置文件,这样更易于管理。

1. 为站点A创建配置文件
`bash
sudo vi /etc/nginx/conf.d/siteA.conf
`
输入以下内容:
`nginx
server {
listen 8080; # 监听8080端口
servername ; # 可以是域名,若无域名可用下划线或服务器IP

location / {
root /var/www/siteA;
index index.html index.htm;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
`

2. 为站点B创建配置文件
`bash
sudo vi /etc/nginx/conf.d/siteB.conf
`
输入以下内容(将端口和根目录改为8081和siteB):
`nginx
server {
listen 8081;
servername ;

location / {
root /var/www/siteB;
index index.html index.htm;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
`

3. 检查配置并重启Nginx
`bash
sudo nginx -t # 测试配置文件语法
sudo systemctl restart nginx # 重启Nginx使配置生效
`

四、测试访问

打开浏览器,分别访问:

  • http://<你的服务器公网IP>:8080
  • http://<你的服务器公网IP>:8081

如果看到之前创建的“Welcome to Site A/B”页面,说明部署成功。

五、进阶配置与注意事项

  1. 域名绑定(可选):如果有域名,可以将域名解析到服务器IP,并在配置文件中将 server_name 改为对应的域名(如 siteA.yourdomain.com)。即使使用不同端口,也建议配置,便于标识和管理。
  1. 服务管理
  • 查看Nginx状态:sudo systemctl status nginx
  • 重新加载配置(不中断服务):sudo systemctl reload nginx

3. 日志查看:每个站点的访问日志和错误日志默认可能混在一起。可以在每个server配置中自定义日志路径,例如:
`nginx
accesslog /var/log/nginx/siteAaccess.log;
errorlog /var/log/nginx/siteAerror.log;
`

  1. 部署实际应用:将您的PHP、Python、Node.js或静态网站文件放入对应的站点目录(如 /var/www/siteA),并确保Nginx配置正确指向应用入口文件。对于动态应用,可能还需要配置反向代理(如将请求转发到本地的3000、5000等应用监听端口)。
  1. 安全性建议
  • 非必要不使用root权限运行服务。
  • 定期更新系统和软件包。
  • 考虑使用HTTPS(SSL/TLS),为每个站点申请证书并配置监听443端口(或自定义端口如8443)。
  • 在安全组中严格控制端口开放范围。

通过以上步骤,您已经成功在阿里云CentOS 7服务器上使用不同端口部署了多个Web站点。此方法简单直接,非常适合快速搭建测试环境或运行多个轻量级服务。随着站点数量增加或需求复杂化,您可以进一步探索基于域名的虚拟主机、负载均衡或容器化部署等更高级的方案。

更新时间:2025-12-20 02:04:33

如若转载,请注明出处:http://www.imzhongying.com/product/61.html