二月 2, 2026指南
如何在一台 VPS 服务器上托管多个网站
了解如何使用虚拟主机在单个 VPS 服务器上托管多个网站。管理多个域名、SSL 证书和资源分配的完整指南。

在一台 VPS 服务器上托管多个网站是管理多个项目的高效且经济高效的方式。使用虚拟主机,您可以从同一服务器提供不同的域名,每个域名都有自己的配置、SSL 证书和文档根目录。本指南向您展示如何在 VPS 上设置和管理多个网站。
托管多个网站的好处
- 节省成本:一台服务器而不是多个托管账户
- 集中管理:所有网站都在一个地方
- 资源共享:高效使用服务器资源
- 易于扩展:无需额外基础设施即可添加更多网站
- 统一备份:一起备份所有网站
- 更好的控制:所有项目的完整服务器访问权限
使用 Nginx 设置虚拟主机
为每个网站创建单独的服务器块:
bash
nano /etc/nginx/sites-available/example1.com
server {
listen 80;
server_name example1.com www.example1.com;
root /var/www/example1.com;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
}
ln -s /etc/nginx/sites-available/example1.com /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx多个域名的 SSL 证书
使用 Certbot 为每个域名设置 SSL 证书:
bash
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example1.com -d www.example1.com
certbot --nginx -d example2.com -d www.example2.com
# 证书通过 cron 自动续订:
certbot renew --dry-run资源管理
监控和限制每个网站的资源:
- 使用具有不同资源限制的 PHP-FPM 池
- 为每个网站设置单独的 MySQL 数据库
- 监控磁盘使用情况:df -h
- 跟踪内存使用情况:htop 或 free -m
- 配置日志轮换以防止磁盘填满
- 使用监控工具跟踪每个网站的性能
网站隔离
确保网站不会相互干扰:
- 单独的文档根目录:/var/www/site1、/var/www/site2
- 具有资源限制的不同 PHP-FPM 池
- 单独的数据库用户和数据库
- 每个域名的独立 SSL 证书
- 每个网站的隔离日志文件
- 使用 chroot 或容器实现最大隔离(高级)
监控多个网站
- 为每个域名设置正常运行时间监控
- 定期监控磁盘空间使用情况
- 跟踪每个网站的带宽使用情况
- 设置高资源使用警报
- 定期备份所有网站
- 监控 SSL 证书过期日期