Nginx 支持多站点配置(虚拟主机)
 码农资讯网 阅读:428 2025-07-24 
                    本文介绍如何通过 Nginx 配置多站点(虚拟主机),让一台服务器同时托管多个域名或项目。我们将讲解虚拟主机的基本概念、配置步骤以及常见问题解决方案。
一、什么是虚拟主机
虚拟主机(Virtual Host)是指在同一台服务器上,通过域名或端口区分不同的网站服务。Nginx 利用 server 块为不同的域名分配独立的站点目录和配置。
常见场景:
- 一台服务器上同时运行 - www.a.com和- www.b.com。
- 不同端口提供不同应用,如 - http://example.com:8080和- http://example.com:8090。
二、配置步骤
1. 准备目录结构
假设我们有两个站点:
- 站点 A: - /var/www/siteA
- 站点 B: - /var/www/siteB
sudo mkdir -p /var/www/siteA sudo mkdir -p /var/www/siteB
2. 编写虚拟主机配置文件
在 /etc/nginx/conf.d/ 下创建两个配置文件,例如 siteA.conf 和 siteB.conf。
siteA.conf
server {
    listen 80;
    server_name www.a.com;
    root /var/www/siteA;
    index index.html index.htm;
    location / {
        try_files $uri $uri/ =404;
    }
}siteB.conf
server {
    listen 80;
    server_name www.b.com;
    root /var/www/siteB;
    index index.html index.htm;
    location / {
        try_files $uri $uri/ =404;
    }
}3. 检查配置并重启
sudo nginx -t sudo systemctl reload nginx
三、常见问题与解决
- 域名解析问题 
 确保- www.a.com和- www.b.com的 DNS 已指向服务器 IP。
- 默认站点覆盖问题 
 如果- server_name没有配置正确,Nginx 会将请求转到默认站点。
- HTTPS 配置 
 每个虚拟主机需要单独配置 SSL 证书,可结合 Let’s Encrypt 自动签发。
四、总结
通过虚拟主机,Nginx 能够高效托管多个域名网站,实现资源共享并降低运维成本。对于中小型项目来说,这是多站点部署的最佳实践。
声明
                        
                        1、部分文章来源于网络,仅作为参考。 2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!






