CentOS 7下Nginx如何配置多虚拟主机,实现高效网站托管?
- 虚拟主机
- 2025-10-20
- 5
在CentOS 7上配置Nginx多虚拟主机,可以实现一台服务器上运行多个网站,以下是一个详细的步骤和配置示例。
步骤1:安装Nginx
确保Nginx已经安装在您的CentOS 7服务器上,如果没有安装,可以使用以下命令进行安装:
sudo yum install nginx y
步骤2:创建虚拟主机配置文件
在Nginx的配置目录下创建一个新的虚拟主机配置文件,为网站A创建一个名为vhost_a.conf的文件,为网站B创建一个名为vhost_b.conf的文件。

步骤3:配置虚拟主机
以下是一个基本的虚拟主机配置示例:
server { listen 80; server_name example.com www.example.com; root /var/www/example.com; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
步骤4:配置SSL证书(可选)
如果您需要使用HTTPS,您需要为您的域名获取SSL证书,可以使用Let’s Encrypt免费证书,以下是一个示例配置:
步骤5:重启Nginx
完成配置后,重启Nginx以使更改生效:
sudo systemctl restart nginx
步骤6:验证配置
在浏览器中输入您的域名,如果一切配置正确,您应该能够看到您网站的首页。
FAQs
Q1:如何为多个域名配置同一个虚拟主机?

A1:您可以在同一个虚拟主机配置文件中添加多个server_name指令。
server { listen 80; server_name example.com www.example.com anotherdomain.com; root /var/www/example.com; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
Q2:如何为虚拟主机设置自定义错误页面?
A2:您可以在虚拟主机配置文件中添加error_page指令,将所有404错误重定向到自定义错误页面:
server { listen 80; server_name example.com www.example.com; root /var/www/example.com; index index.html index.htm; location / { try_files $uri $uri/ =404; } error_page 404 /custom_404.html; }
确保您有一个名为custom_404.html的文件位于/var/www/example.com目录下。
