location有”定位”的意思, 主要是根据Uri来进行不同的定位.在虚拟主机的配置中,是必不可少的.
location可以把网站的不同部分,定位到不同的处理方式上.
1.location的基础语法
location [=|~|~*|^~] patt { } =:严格匹配。如果这个查询匹配,那么将停止搜索并立即处理此请求。 ~:为区分大小写匹配(可用正则表达式)。 ~*:为不区分大小写匹配(可用正则表达式)。 ^~:如果把这个前缀用于一个常规字符串,那么告诉nginx 如果路径匹配那么不测试正则表达式。
2.location如何发挥作用
3.简单实例证明上述图片结论
不带正则表达式的匹配过程
location = / { root /var/www/html/; index index.htm index.html; } location / { root /usr/local/nginx/html; index index.html index.htm; }
location配置如上,若访问http://xxx.com/,定位的流程是:
1:精准匹配命中"/",得到index页为index.htm,所以请求的地址变为http://xxx.com/index.htm
2:再次匹配"/index.htm",此次内部转跳uri已经是"/index.htm",命中普通匹配"/",根目录为/usr/local/nginx/html
3:最终结果,访问了/usr/local/nginx/html/index.htm
带正则表达式的匹配过程
location / { root /usr/local/nginx/html; index index.html index.htm; } location ~ image { root /var/www/; index index.html; }
如果我们访问http://xx.com/image/logo.png。此时uri为"/image/logo.png"命中了普通匹配"/",也命中了正则匹配"~ image",但是根据上述图片中匹配过程分析,最终是正则匹配生效。
所以最终访问地址为:/var/www/image/logo.png。如果你想最终的匹配路径为/var/www/logo.png可以把正则匹配中的"root /var/www/";修改为"alias /var/www/"
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍详解Nginx location 匹配规则,包括了详解Nginx location 匹配规则的使用技巧和注意事项,需要的朋友参考一下 语法规则 location [=|~|~*|^~] /uri/ { … } 模式 含义 location = /uri = 表示精确匹配,只有完全匹配上才能生效 location ^~ /uri ^~ 开头对URL路径进行前缀匹配,并且在正则之前。 l
语法规则 location [=|~|~*|^~] /uri/ { … } 模式 含义 location = /uri = 表示精确匹配,只有完全匹配上才能生效 location ^~ /uri ^~ 开头对URL路径进行前缀匹配,并且在正则之前。 location ~ pattern 开头表示区分大小写的正则匹配 location ~* pattern 开头表示不区分大小写的正则匹配 locat
本文向大家介绍nginx配置location方法总结,包括了nginx配置location方法总结的使用技巧和注意事项,需要的朋友参考一下 location匹配顺序 1."="前缀指令匹配,如果匹配成功,则停止其他匹配 2.普通字符串指令匹配,顺序是从长到短,匹配成功的location如果使用^~,则停止其他匹配(正则匹配) 3.正则表达式指令匹配,按照配置文件里的顺序,成功就停止其他匹配 4.如
本文向大家介绍简介Nginx中的location匹配规则,包括了简介Nginx中的location匹配规则的使用技巧和注意事项,需要的朋友参考一下 location匹配命令 ~ #波浪线表示执行一个正则匹配,区分大小写 ~* #表示执行一个正则匹配,不区分大小写 ^~ #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录 = #进行
如果配置是 访问 http://localhost:8002/about/ 会返回 403 禁止 访问 http://localhost:8002/about/ 会返回 html 目录下的 index.html 文件,这是符合预期的 访问 http://localhost:8002/about/ 会不断进行重定向生成 http://localhost:8002/about/index.html/i
nginx 世界的 location 是异常强大的,毕竟 nginx 的主要应用场景是在负载均衡、API server,在不同 server、location 之间跳转更是家常便饭。利用不同 location 的功能组合,我们可以完成内部调用、流水线方式跳转、外部重定向等几大不同方式,下面将给大家介绍几个主要应用,就当抛砖引玉。 内部调用 例如对数据库、内部公共函数的统一接口,可以把它们放到统一的
只有这一个地方配置了 8001 端口。 打算是通过访问 http://localhost:8001/about/ 打开 html 目录下的 about.html 的,但是返回 403 错误。如果是访问 http://localhost:8001/ 会返回 html 目录下的 index.html 文件 如果注释了这里的配置,那么 http://localhost:8001/ 是无法访问的。也就是配
本文向大家介绍Nginx配置详解(推荐),包括了Nginx配置详解(推荐)的使用技巧和注意事项,需要的朋友参考一下 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。 Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Hos