You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何新增/覆盖Nginx配置文件?多站点部署正确配置方式

Nginx多站点配置的标准惯例

强烈建议为每个独立托管的站点/应用创建单独的配置文件,直接在已有配置文件里追加server块虽然能正常运行,但不符合运维通用规范,后续维护会有很多隐患。

不推荐混写配置的核心原因

  • 故障风险高:多个站点的规则写在同一个文件里,修改单站点配置时很容易误触其他站点的规则,导致无关站点意外中断。
  • 排错效率低:站点出现访问异常时,独立配置可以直接定位到对应文件排查规则,混写配置需要通篇查找匹配的server、location块,排错时间会成倍增加。
  • 站点管理不便:sites-available+sites-enabled的目录设计本身就是为了支持单站点独立启停,独立配置可以通过创建/删除软连接快速上线、下线站点,不需要改动任何其他站点的配置。
  • 迁移复用麻烦:后续如果需要把某个站点迁移到其他服务器,直接复制对应独立配置文件即可,混写配置需要手动拆分提取对应规则,很容易出现漏配。

RHEL系统下的标准操作流程

注意RHEL官方源安装的Nginx默认不带sites-available、sites-enabled目录,如果你已经手动创建目录并在nginx.conf中添加了对应目录的include规则,新增站点按以下步骤操作即可:

  1. 在/etc/nginx/sites-available/路径下新建以站点域名命名的配置文件,比如新域名为mysite.com就创建mysite.com.conf,配置参考如下格式:
server {
    listen 80;
    server_name mysite.com;

    charset utf-8;
    root /var/www/mysite-folder;
    index index.html index.htm;

    location / {
            root /var/www/mysite-folder;
            try_files $uri /index.html;
    }
}
  1. 配置编写完成后执行nginx -t命令校验语法,确认没有配置错误。
  2. 创建软连接将配置文件链接到sites-enabled目录实现配置启用:
ln -s /etc/nginx/sites-available/mysite.com.conf /etc/nginx/sites-enabled/
  1. 执行systemctl reload nginx重载Nginx配置,新站点即可上线。

特殊场景说明

如果你是要在同一个域名下通过不同路径部署多个应用(例如somedomain.com/blog、somedomain.com/admin分别对应不同应用),这种场景不需要新建独立配置文件,直接在已有域名的配置文件中新增对应的location规则即可。只有当应用对应独立的server_name(独立域名、二级域名)时,才需要拆分独立配置文件。

内容的提问来源于stack exchange,提问作者arve

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 08:27:24