nginx-基础配置:多个location转发任意请求或访问静态资源文件
2018-08-10更新
server {
#监听的端口
listen 80;
#监听的域名
server_name localhost;
#监听带后缀的url
location ^~\.txt {
#文件放到/html文件夹下
root /;
}
#监听所有url,没有特殊需求就用这一个location就够了
#使用通配符只有在没有匹配上其他location的情况下会进入
location / {
#去掉了只有url才转发的限制,因为直接访问域名会通不过if从而转发不了请求。
proxy_pass http://localhost:8080;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
附带上匹配规则: 里面的规则自己尝试一下就明白了
以下 为原文↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
server {
#监听的端口
listen 80;
#监听的域名
server_name localhost;
#监听带后缀的url
location ^~\.txt {
#文件放到/html文件夹下
root /;
}
#监听所有url,没有特殊需求就用这一个location就够了
location / {
#没有后缀的请求才会转发 是为了配合上一个location能访问到资源文件而不是转发所有请求。没有特殊需求就不要判断直接proxy_pass到请求
if (!-e $request_filename){
proxy_pass http://localhost:8080;
break;
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
location可以添加多个,但是要注意相互之间不要冲突,否则转发多种会请求超时
编辑 (opens new window)
上次更新: 2024-11-06, 19:27:10