nginx conf.d 模块化配置

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


nginx conf.d 模块化配置

1. 概述

在 Nginx 中,conf.d 目录通常用于模块化配置,这种做法允许将不同的 Nginx 配置文件分成多个独立的文件,以便管理和维护。具体来说,conf.d 目录是 Nginx 主配置文件(通常是 nginx.conf)中的一个 include 文件夹,用于引入其他配置文件的内容。

通常情况下,Nginx 的主配置文件 nginx.conf 包含了各种配置块(例如 http、server、location 等),这些块可以包含在一个文件中,也可以分散在多个文件中。使用 conf.d 目录可以有效地将这些配置块分离到单独的文件中,每个文件负责特定的配置项或服务。

2. 优势

  1. 结构清晰:将配置文件按功能或服务拆分成多个文件,使得整体配置结构更加清晰和有条理。

  2. 简化管理:每个文件只需关注特定功能或服务的配置,易于单独维护和修改,减少出错的可能性。

  3. 灵活性:可以根据需要添加、删除或修改单个配置文件,而不必编辑主配置文件,方便扩展和调整配置。

3. 配置

nginx.conf内容:


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;


    log_format myFormat '$remote_addr–$remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for'; #自定义格式
    access_log logs/access.log myFormat;  #combined为日志格式的默认值

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;
    include conf.d/*.conf;
	error_page   500 502 503 504  /50x.html;

    

}

添加 include conf.d/*.conf; 命令

在这里插入图片描述
在这里插入图片描述
module_A.conf

upstream mymanagerA {
    ip_hash;
    server 192.168.33.125:8088 weight=20 max_fails=2 fail_timeout=30s;
}


server {
    listen       8002 ;
    server_name  www.yzy.com;
    
	location / {
		root html;
		index index.html index.htm;
	}

	location = /favicon.ico {
		log_not_found off;
		access_log off;
	}
		
	location /api/ {
        proxy_pass http://mymanagerHttpHttps;
		proxy_set_header Host $host:$proxy_port;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }
}





module_B.conf

upstream mymanagerB {
    ip_hash;
    server 192.168.33.125:8088 weight=20 max_fails=2 fail_timeout=30s;
}


server {
    listen       8002 ;
    server_name  www.hahah.com;
    
	location / {
		root html;
		index index.html index.htm;
	}

	location = /favicon.ico {
		log_not_found off;
		access_log off;
	}
		
	location /api/ {
        proxy_pass http://mymanagerHttpHttps;
		proxy_set_header Host $host:$proxy_port;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }
}




注意的是upstream 是唯一的,所以不管你有几个conf文件,所有文件里面的内容中upstream 不能重复

相关推荐

  1. 模块、系统化、功能

    2024-07-22 09:58:04       55 阅读
  2. CSS_sass模块、scss模块

    2024-07-22 09:58:04       27 阅读
  3. RedisTemplate序列配置

    2024-07-22 09:58:04       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 09:58:04       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 09:58:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 09:58:04       45 阅读
  4. Python语言-面向对象

    2024-07-22 09:58:04       55 阅读

热门阅读

  1. kotlin中常见的创建协程的方式

    2024-07-22 09:58:04       13 阅读
  2. 【已解决】服务器无法联网与更换镜像源

    2024-07-22 09:58:04       19 阅读
  3. 20240721图像扩边与填充详解

    2024-07-22 09:58:04       15 阅读
  4. 自动化UI测试元素定位精炼

    2024-07-22 09:58:04       16 阅读
  5. 贪吃蛇游戏

    2024-07-22 09:58:04       16 阅读