Nginx Location配置详解
2018-01-17 10:14
239 查看
用户通过浏览器发起请求至Nginx后,Nginx通过查找配置文件将客户端请求映射到一个location block,后续处理由location中所配置的每个指令对应的模块去处理。
nginx.conf配置文件中默认至少存在一个location。
常见Location匹配URL的方式如下:
其中location =、location ^~、location / 属于普通字符串匹配
location ~ 、location ~* 属于正则表达式匹配
Location规则匹配优先级:
如下为Nginx Location规则案例演示:
企业生产环境中无需在nginx.conf配置文件中同时添加五种规则匹配,如下是生产环境Nginx Location部分配置样例:
nginx.conf配置文件中默认至少存在一个location。
常见Location匹配URL的方式如下:
= 字面精确匹配; ^~ 最大前缀匹配; / 不带任何前缀:最大前缀匹配; ~ 大小写相关的正则匹配; ~* 大小写无关的正则匹配; @ location内部重定向的变量。 |
location ~ 、location ~* 属于正则表达式匹配
Location规则匹配优先级:
(location =) > (location 完整路径) > (location ^~ 路径) > (location ~|~* 正则顺序) > (location 部分起始路径) > (location /) |
location = / { [ configuration L1 ] #只会匹配/,优先级比Location /低。 } location = /index.html { [ configuration L2 ] #只会匹配/index.html,优先级最高。 } location / { [ configuration L3 ] #匹配任何请求,因为所有请求都是以"/"开始; #但是更长字符匹配或者正则表达式匹配会优先匹配,优先级最低。 } location = /images/ { [ configuration L4 ] #匹配任何以/images/开始的请求,并停止匹配其它location; } location ~* \.(html|txt|gif|jpg|jpeg)$ { [ configuration L5] # 匹配以html、txt、gif、jpg、jpeg结尾的URL文件请求; # 但是所有/images/目录的请求将由 [Configuration L4]处理。 } 浏览器发起HTTP Request URI案例与Location规则案例匹配如下: / 匹配configuration L3; /index.html匹配configuration L2; /images/匹配configuration L4; /images/logo.png匹配configuration L4; /img/test.jpg匹配configuration L5。 |
location / { root /var/www/html/; expires 60d; } location ~ .*\.(gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ { root /var/www/html/; expires 60d; } location ~ .*\.(jsp|php|cgi|do)$ { root /var/www/html/; proxy_pass http://linux_web; proxy_http_version 1.1; proxy_set_header Connection ""; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location =/newindex.html { root /var/www/newwww/; expires 60d; } |
相关文章推荐
- nginx location配置详解
- nginx location 配置详解 【转载,整理】
- nginx location配置详解
- nginx location配置详解
- Nginx Location 的语法详解,与简单配置
- nginx location 配置 正则表达式实例详解
- linux下mysql配置文件my.cnf详解【转】
- Haproxy均衡负载部署和配置文件详解
- keepalive配置文件详解
- 使用阿里云https证书nginx安装配置详解
- Hibernate各种主键生成策略与配置详解
- CentOS网络配置详解
- web.xml中如何设置配置文件的加载路径实例详解
- spring与hibernate配置jar包功能详解
- WebPack安装-使用-Loader-配置-插件-环境-排错详解(下扩展)
- Nginx 配置文件详解
- Apache配置详解(最好的APACHE配置教程)
- Mybatis Generator最完整配置详解
- nginx 配置文件详解
- SNMP-配置文件详解