nginx http服务器配置与反向代理配置

为了使配置更易于维护,建议您将其拆分为存储在/etc/nginx/conf.d目录中的一组功能特定文件,并在主nginx.conf文件中使用include指令引用(包函)指定文件的内容。如下所示:

include conf.d/http;
include conf.d/stream;
include conf.d/exchange-enhanced;

几个顶级指令(称为上下文)将适用于不同流量类型的指令组合在一起:

events – 一般连接处理
http – HTTP协议流量
mail – Mail协议流量
stream – TCP协议流量


1. 设置虚拟服务器
NGINX配置文件必须至少包含一个服务器指令来定义虚拟服务器。 当NGINX处理请求时,它首先选择提供请求的虚拟服务器。
虚拟服务器由http上下文中的服务器指令定义,例如:

http {
    server {
        # Server configuration
    }
}


可以将多个server指令添加到http上下文中以定义多个虚拟服务器。
server配置块通常包括一个listen指令,用于指定服务器侦听请求的IP地址和端口(或Unix域套接字和路径)。IPv4和IPv6地址均被接受;
下面的示例显示了监听IP地址127.0.0.1和端口8080的服务器的配置:

server {
    listen 127.0.0.1:8080;
    # The rest of server configuration
}

2. 配置位置

NGINX可以根据请求URI向不同的代理发送流量或提供不同的文件。 这些块是使用放置在server指令中的location指令来定义的。

NGINX测试根据所有location指令的参数请求URI,并应用匹配location中定义的指令。 在每个location块内,通常可能(除了一些例外)放置更多的location指令以进一步细化特定组请求的处理。
注意:在本教程文章中,单词location是指单个location上下文。location指令有两种类型的参数:前缀字符串(路径名)和正则表达式。 对于要匹配前缀字符串的请求URI,必须以前缀字符串开头。

http {
    server {
        # Server configuration
        
        location / {
            #location configurtion
        }
    }
}

1.http服务器配置文件

在/etc/nginx/conf.d目录下新建http.conf文件

##web服务器配置
server {
        listen 2001; #监听的端口
	server_name 192.168.1.12; #
	
	root /root/xichuan/www; #root指令指定将用于搜索文件的根目录
	index index.html index.htm index.nginx-debian.html; #index首页
	
	location / {
                try_files $uri $uri/ =404; #try_files指令可用于检查指定的文件或目录是否存在并进行内部重定向,如果没有指定的文件或目录,则返回特定的状态代码
	}	
}

2.反向代理配置文件

在/etc/nginx/conf.d目录下新建proxy.conf文件

#反向代理配置
server {
       listen 3000;

       server_name 127.0.0.1;
       client_max_body_size 1024M;

       location /web/ { #以127.0.0.1:3000/web/ 请求的转向 localhost:2000/web/
          proxy_pass http://localhost:2000;  #反方代理的内网应用
          proxy_set_header Host $host:$server_port; #请求过来的ip与端口号
        }
	location /api/ { #以127.0.0.1:3000/api/ 请求的转向 localhost:2000/api/
          proxy_pass http://localhost:80;  #反方代理的内网应用
          proxy_set_header Host $host:$server_port;
        }

}
r

参考文章:Nginx配置Web服务器 -Nginx教程

 github上有我更多的笔记:Raray-chuan (兮川) · GitHub,欢迎stars与following,如果有问题可以在issue中向我咨询

关注我的公众号,获取更多关于后端、大数据的知识

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值