Nginx 怎么使用 include 配置管理不同业务线各自的子域名

老明君_3253

老明君_3253

2026-08-15

991人浏览

原创

Nginx 用 include 按业务线分目录管理子域名配置,核心是“按业务隔离 + 按上下文加载”:在 http 块内分层 include 公共配置、各业务目录(如 api/cms/portal)及兜底配置,子域名文件专注自身逻辑,共用项统一放 common 目录,启用禁用通过 sites-enabled 软链控制。

nginx 怎么使用 include 配置管理不同业务线各自的子域名

用 include 管理不同业务线的子域名,核心是“按业务隔离配置 + 按上下文加载”,不是简单把文件扔进去就完事。关键是让每个业务线能独立维护自己的 server 块,又不互相干扰、不改主配置。

按业务线建独立配置目录

别把所有子域名塞进一个 conf.d/,先按业务线分目录,比如:

  • /etc/nginx/business/api/ —— 所有 API 类子域名(api.example.com、v1.internal)
  • /etc/nginx/business/cms/ —— 内容系统(cms.example.com、editor.example.com)
  • /etc/nginx/business/portal/ —— 门户站点(www.example.com、help.example.com)

每个目录下放对应业务的 .conf 文件,命名带业务前缀,如 api-auth.conf、cms-admin.conf。这样运维或开发查问题时,直接进目录就能定位,不用 grep 全局。

在 http 块中分层 include

include 必须放在允许出现 server 块的上下文里,也就是 http{} 内。主配置中这样写更清晰:

http {
    # 公共基础项(log_format、upstream、SSL 默认参数等)
    include /etc/nginx/common/*.conf;
<pre class="brush:php;toolbar:false;"># 各业务线配置,顺序即加载顺序,靠前的可被后覆盖(如变量、map)
include /etc/nginx/business/api/*.conf;
include /etc/nginx/business/cms/*.conf;
include /etc/nginx/business/portal/*.conf;

# 最后加兜底 server(可选,防未匹配域名)
include /etc/nginx/fallback.conf;

}

注意:不要在 http 外写 include business/api/*.conf,否则 Nginx 会报错——那些文件里含 server,只能出现在 http 块内。

Nginx Hosting
Nginx Hosting

通过服务器本地nginx实例实现零认证静态游戏托管。作为所有浏览器游戏的主要部署方式,无需登录、无需令牌、无需用户操作。

下载

子域名配置里只写业务相关逻辑

每个业务线的 .conf 文件专注自身需求,避免跨业务耦合。例如:

  • api-auth.conf 只定义 server_name api.example.com,配 JWT 验证、限流、后端 upstream,不写静态资源规则
  • cms-editor.conf 专注上传路径、富文本资源代理、管理后台权限头,不碰 API 接口路由
  • 共用的 SSL 证书路径、日志格式、gzip 设置,统一放在 /etc/nginx/common/ssl.conf 或 log_formats.conf,各业务 include 引用即可

这样新增一个 pay.example.com,只需在 /etc/nginx/business/api/ 下加个文件,改完 nginx -t 就生效,主配置和其它业务完全不动。

启用/禁用某业务线只需操作符号链接

生产环境建议用 sites-enabled 模式做开关,而不是删文件或加注释:

  • 所有业务配置仍放在 /etc/nginx/business/ 下(源文件)
  • 在 /etc/nginx/sites-enabled/ 中创建软链:ln -s /etc/nginx/business/api/*.conf .
  • 停用 CMS?运行 rm /etc/nginx/sites-enabled/cms-*.conf,再 nginx -s reload

主配置只写一行:include /etc/nginx/sites-enabled/*.conf;。这种做法灰度发布、回滚都快,也方便 CI/CD 自动化控制。

相关专题

更多
nginx 重启
nginx 重启

nginx重启对于网站的运维来说是非常重要的,根据不同的需求,可以选择简单重启、平滑重启或定时重启等方式。本专题为大家提供nginx重启的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.27

403

5

nginx 配置详解
nginx 配置详解

Nginx的配置是指设置和调整Nginx服务器的行为和功能的过程。通过配置文件,可以定义虚拟主机、HTTP请求处理、反向代理、缓存和负载均衡等功能。Nginx的配置语法简洁而强大,允许管理员根据自己的需要进行灵活的调整。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.04

3567

6

nginx配置详解
nginx配置详解

NGINX与其他服务类似,因为它具有以特定格式编写的基于文本的配置文件。本专题为大家提供nginx配置相关的文章,大家可以免费学习。

2023.08.04

6305

6

tomcat和nginx有哪些区别
tomcat和nginx有哪些区别

tomcat和nginx的区别:1、应用领域;2、性能;3、功能;4、配置;5、安全性;6、扩展性;7、部署复杂性;8、社区支持;9、成本;10、日志管理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.02.23

581

5

nginx报404怎么解决
nginx报404怎么解决

当访问 nginx 网页服务器时遇到 404 错误,表明服务器无法找到请求资源,可以通过以下步骤解决:1. 检查文件是否存在且路径正确;2. 检查文件权限并更改为 644 或 755;3. 检查 nginx 配置,确保根目录设置正确、没有冲突配置等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.07.09

1496

5

Nginx报404错误解决方法
Nginx报404错误解决方法

解决方法:只需要加上这段配置:try_files $uri $uri/ /index.html;即可。想了解更多Nginx的相关内容,可以阅读本专题下面的文章。

2024.08.07

3958

3

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

2026.01.13

122

12

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

2026.01.13

477

23

Nginx跨平台安装实操指南:Windows、macOS与Linux环境快速搭建
Nginx跨平台安装实操指南:Windows、macOS与Linux环境快速搭建

本指南详解Nginx在Windows、macOS及Linux系统的安装全流程。涵盖官方包解压、Homebrew一键部署、APT/YUM源配置及Docker容器化方案。无论新手或开发者,均可快速搭建运行环境,掌握跨平台核心指令,为后续配置与调优奠定坚实基础。

2026.03.16

159

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpEnv手册
phpEnv手册

共0课时 | 0人学习

nginx手册
nginx手册

共0课时 | 0人学习

进程与SOCKET
进程与SOCKET

共6课时 | 0.5万人学习