在现代Web开发中,一台服务器上同时运行多个网站是非常常见的需求。通过Nginx虚拟主机配置,我们可以轻松实现在同一台服务器上托管多个域名或项目。本教程将从零开始,带你一步步完成配置,即使是完全的新手也能看懂!
虚拟主机(Virtual Host)是指在一台物理服务器上,通过软件配置实现多个独立网站的运行。每个网站可以拥有自己的域名、根目录和访问规则,彼此互不干扰。Nginx 是一款高性能的 Web 服务器,支持基于域名、IP 或端口的虚拟主机。
在开始之前,请确保你已经:
nginx -v 验证)假设我们要配置两个网站:site1.com 和 site2.com。首先为它们分别创建根目录:
sudo mkdir -p /var/www/site1.com/htmlsudo mkdir -p /var/www/site2.com/html
然后给这些目录设置合适的权限:
sudo chown -R $USER:$USER /var/www/site1.com/htmlsudo chown -R $USER:$USER /var/www/site2.com/html
为了验证配置是否成功,我们为每个站点创建一个简单的 HTML 页面:
echo "<h2>欢迎访问 Site1!</h2>" > /var/www/site1.com/html/index.htmlecho "<h2>欢迎访问 Site2!</h2>" > /var/www/site2.com/html/index.html
Nginx 的站点配置文件通常位于 /etc/nginx/sites-available/ 目录下。我们为每个站点创建一个配置文件:
创建 site1.com 的配置:
sudo nano /etc/nginx/sites-available/site1.com 在打开的编辑器中粘贴以下内容:
server { listen 80; listen [::]:80; root /var/www/site1.com/html; index index.html index.htm; server_name site1.com www.site1.com; location / { try_files $uri $uri/ =404; }} 同样地,为 site2.com 创建配置文件:
server { listen 80; listen [::]:80; root /var/www/site2.com/html; index index.html index.htm; server_name site2.com www.site2.com; location / { try_files $uri $uri/ =404; }} Nginx 使用符号链接来启用站点。执行以下命令启用两个站点:
sudo ln -s /etc/nginx/sites-available/site1.com /etc/nginx/sites-enabled/sudo ln -s /etc/nginx/sites-available/site2.com /etc/nginx/sites-enabled/
建议删除默认站点(避免冲突):
sudo rm /etc/nginx/sites-enabled/default 在重启前,先检查配置语法是否正确:
sudo nginx -t 如果显示 syntax is ok,说明配置无误。接着重启 Nginx 使配置生效:
sudo systemctl reload nginx 现在,如果你在浏览器中访问 http://site1.com 和 http://site2.com(需确保域名已正确解析),应该能看到各自不同的欢迎页面!
在进行 Nginx多站点部署 时,注意以下几点:
server_name 中的域名与 DNS 解析一致通过以上步骤,你就成功完成了 Nginx服务器配置 中最关键的虚拟主机部分!无论你是个人开发者还是运维工程师,掌握这项技能都将大大提升你的工作效率。
关键词:Nginx虚拟主机配置, Nginx多站点部署, Nginx服务器配置, Web服务器虚拟主机
本文由主机测评网于2025-11-26发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/202511720.html