nginx 配置详情 解析

配置nginx
    nginx的配置文件: /usr/local/nginx/conf/nginx.conf
    配置文件常见结构的从外到内依次是「http」「server」「location」等等,缺省的继承关系是从外到内,也就是说内层块会自动获取外层块的值作为缺省值

Server
    解决监听的 ip/域名 端口 确定根路径
    server {
        listen 80;
        server_name localhost;
        root html;
        index index.html index.htm;
        }
     listen 指监听端口,
     server_name 用来指定IP或域名,多个域名对应统一规则可以空格分开,
     index 用于设定访问的默认首页地址,
     root 指令用于指定虚拟主机的网页跟目录,这个地方可以是相对地址也可以是绝对地址。

    多个server时:
        通过在主配置文件 nginx.conf 加上 include 指令包含进来。更便于管理。
        include vhosts/*.conf;  把vhosts的文件都包含进去啦

location
     将server的 root 和index 包含起来  
     server {
        listen 80;
        server_name localhost;

        location / {
            root   html;
            index  index.html index.htm;
            }
        }


    匹配规则:
        ~ 波浪线表示执行一个正则匹配,区分大小写
        ~* 表示执行一个正则匹配,不区分大小写
        ^~ ^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录
        = 进行普通字符精确匹配


    匹配例子:
        location = / {
                        # 只匹配"/". [ configuration A ]
        }

        location / {
                        # 匹配任何请求,因为所有请求都是以"/"开始 # 但是更长字符匹配或 者正则表达式匹配会优先匹配 [ configuration B ]
        }

        location ^~ /images/ {
                        # 匹配任何以 /images/ 开始的请求,并停止匹配 其它
                        location [ configuration C ]
        }

        location ~* .(gif|jpg|jpeg)$ {
                        # 匹配以 gif, jpg, or jpeg结尾的请求.
                        # 但是所有 /images/ 目录的请求将由 [Configuration C]处理.
                        [ configuration D ]
        }
        请求:/ -> 符合configuration A
        /documents/document.html -> 符合configuration B
        /images/1.gif -> 符合configuration C
        /documents/1.jpg ->符合 configuration D


    静态文件映射:
        访问项目的配置文件主要有 root 和 aliasp’s 两个指令
        alias
            alias后跟的指定目录是准确的,并且末尾必须加 /
            location /c/ {
                alias /a/;
            }
        root
            root后跟的指定目录是上级目录,并且该上级目录下要含有和location后指定名称的同名目录才行
            location /c/ {
                root /a/;
            }

请求转发:
        比如我要将所有的请求到转移到真正提供服务的一台机器的 8001 端口
        location / {
            proxy_pass 172.16.1.1:8001;
            }


负载均衡:
    vim  /usr/local/nginx/conf/nginx.conf
    在http模块中添加如下配置
    upstream webservers {
        server 127.0.0.1:8081 weight=10;
        server 127.0.0.1:8082 weight=10;
    }


    server {
        listen       80;
        server_name  test.nginx.com;
        
        location / {
            proxy_pass   http://webservers;
        }        

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nginx配置文件是用来配置Nginx服务器的行为和功能的文件。配置文件通常位于Nginx安装目录下的`conf`文件夹中,主要有两个文件:`nginx.conf`和`sites-available/default`。其中,`nginx.conf`是主配置文件,而`sites-available/default`是默认的虚拟主机配置文件。 在Nginx配置文件中,可以设置一些全局的参数,如`worker_processes`用于指定Nginx的工作进程数,`events`用于配置事件模块,`http`用于配置HTTP模块等。此外,还可以使用`include`指令来引入其他配置文件,以便更好地组织和管理配置配置文件中的每个指令都有特定的作用,比如`pid`指令用于指定Nginx进程的PID存放路径,`location`指令用于URL地址匹配,可以实现对动态和静态网页的过滤处理,也可以用于实现反向代理和负载均衡等功能。 总之,Nginx配置文件是用来定义Nginx服务器的行为和功能的重要文件,通过对配置文件的修改和调整,可以实现对Nginx服务器的灵活配置和定制。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [Nginx配置文件解析及功能演示](https://blog.csdn.net/pokes/article/details/121979187)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Nginx配置文件详解](https://blog.csdn.net/qq_41536778/article/details/104726671)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值