nginx配置proxy_pass中url末尾带/与不带/的区别详解_nginx

来源:脚本之家  责任编辑:小易  

location !~2113 static {rewrite ^5261 /error_pages/404.html;return 404;}或者location / {if($request_uri !~ "static") {rewrite ^ /error_pages/404.html;return 404;}}没有测试过,自己去测4102试一下1653吧,回不对的话,再多搜索一下相关资料看答看吧,一个nginx服务器只能有2113一个虚拟主机允许5261IP访问只要在server_name最后4102面添加一个1653default,就可以在其他nginx没有定义版的域名下,使用当前权server解析(例如,其他server都没有定义ip地址作为server_name则用IP访问会被打到default主机上)追问答非所问本回答被网友采纳www.zgxue.com防采集请勿采集本网。

nginx配置proxy_pass时url末尾带“/”与不带“/”的区别如下:

lvs 是虚拟服务的一个环境,而LVS+nginx是用这个环境来支持ngin服务

注意:当location为正则表达式匹配模式时,proxy_pass中的url末尾是不允许有"/"的,因此正则表达式匹配模式不在讨论范围内。

nginx rewrite是必然会是浏览的url改变的。你不想改变应该使用nginx的反向代理,参数为proxy_pass

 proxy_pass配置中url末尾带/时,nginx转发时,会将原uri去除location匹配表达式后的内容拼接在proxy_pass中url之后。

Nginx配置proxy_pass转发的/路径问题 在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给

测试地址:http://192.168.171.129/test/tes.jsp

nginx的rewrite指令中可以通过设置该条rewrite的flag来对该规则进行说明。 一般可以设置的flag有: last,break,redirect,permanent四种。

场景一:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test/ { proxy_pass http://192.168.171.129:8080/server/;}

代理后实际访问地址:http://192.168.171.129:8080/server/tes.jsp

场景二:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test { proxy_pass http://192.168.171.129:8080/server/;}

代理后实际访问地址:http://192.168.171.129:8080/server//tes.jsp

场景三:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test/ { proxy_pass http://192.168.171.129:8080/;}

代理后实际访问地址:http://192.168.171.129:8080/tes.jsp

场景四:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test { proxy_pass http://192.168.171.129:8080/;}

代理后实际访问地址:http://192.168.171.129:8080//tes.jsp

proxy_pass配置中url末尾不带/时,如url中不包含path,则直接将原uri拼接在proxy_pass中url之后;如url中包含path,则将原uri去除location匹配表达式后的内容拼接在proxy_pass中的url之后。

测试地址:http://192.168.171.129/test/tes.jsp

场景一:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test/{ proxy_pass http://192.168.171.129:8080/server; }

代理后实际访问地址:http://192.168.171.129:8080/servertes.jsp

场景二:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test { proxy_pass http://192.168.171.129:8080/server;}

代理后实际访问地址:http://192.168.171.129:8080/server/tes.jsp

场景三:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test/ { proxy_pass http://192.168.171.129:8080;}

代理后实际访问地址:http://192.168.171.129:8080/test/tes.jsp

场景四:

你这哪是要取前缀,你这是要截取字符串,一般前缀指的是一个路径path。只能先获取到URL,再进行字符的截取操作。

location ^~ /test { proxy_pass http://192.168.171.129:8080;}

代理后实际访问地址:http://192.168.171.129:8080/test/tes.jsp

到此这篇关于nginx配置proxy_pass中url末尾带/与不带/的区别详解的文章就介绍到这了,更多相关nginx proxy_pass url末尾内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:nginx location中多个if里面proxy_pass的方法nginx 反向代理之 proxy_pass的实现详解Nginx proxy_pass的一个/斜杠引发的血案Nginx代理proxy pass配置去除前缀的实现记一次nginx中proxy_pass的使用问题nginx proxy_pass反向代理配置中url后加不加/的区别介绍Nginx服务器的反向代理proxy_pass配置方法讲解nginx proxy_pass指令’/’使用注意事项

proxy_pass网址后是可以2113带路径5261的4102,但是带路径的话涉及到的规则比较复杂。1653如下所示内:(1)如果包含路径,则匹配某容个location的正常uri成功的部分则会被proxy_pass中指定的路径部分代替,例如:location /name/ {    proxy_pass http://127.0.0.1/remote/;}例如/name/xxx这样的请求,转发后则会变成/remote/xxx;(2)但是当location指令的参数是一个正则表达式的时候,此时如果proxy_pass指定的url中包含路径,则无法完成替换。此时proxy_pass指令中的url是不建议包含路径的。所以虽然nginx proxy_pass网址后可以包含uri部分,但是一般不建议这么做内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • nginx 出现 403 forbidden 最终解决方法
  • nginx中使用lua脚本的方法
  • 一个等号引发的血案(谈nginx正确的404配置)
  • 使用nginx、nginx plus抵御ddos攻击的方法
  • 利用nginx的map指令实现页面跳转
  • 利用nginx反向代理与负载均衡搭建多人测试环境详解
  • nginx安装vsftpd最简流程
  • 详解centos7 源码编译安装 nginx1.13
  • 让nginx支持shtml格式的配置方法
  • nginx could not build the server_names_hash 解决方法
  • nginx proxy_pass 网址后面能带路径吗
  • nginx如何配置访问时域名中不带某字符就强制重定向
  • 如何让Nginx中URL不区分大小写
  • Nginx做反向代理,后端主机是绑定的域名虚拟主机,pr...
  • nginx加和不加的区别
  • 怎么配置nginx rewrite,才不会引起浏览器url地址...
  • 为什么nginx配置了proxy
  • nginx proxy pass 和rewrite的区别
  • nginx 配置里面获取 url的前缀
  • nginx location 路径匹配:不含某字符的路径
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全星外虚拟主机华众虚拟主机linuxwin服务器ftp服务器dns服务器tomcat nginxzabbix云和虚拟化服务器其它首页服务器nginxnginx location中多个if里面proxy_pass的方法nginx 反向代理之 proxy_pass的实现详解nginx proxy_pass的一个/斜杠引发的血案nginx代理proxy pass配置去除前缀的实现记一次nginx中proxy_pass的使用问题nginx proxy_pass反向代理配置中url后加不加/的区别介绍nginx服务器的反向代理proxy_pass配置方法讲解nginx proxy_pass指令’/’使用注意事项nginx 出现 403 forbidden 最终解决方法nginx中使用lua脚本的方法一个等号引发的血案(谈nginx正确的404配置)使用nginx、nginx plus抵御ddos攻击的方法利用nginx的map指令实现页面跳转利用nginx反向代理与负载均衡搭建多人测试环境详解nginx安装vsftpd最简流程详解centos7 源码编译安装 nginx1.13让nginx支持shtml格式的配置方法nginx could not build the server_names_hash 解决方法nginx提示:500 internal servernginx 多站点配置方法集合权限问题导致nginx 403 forbiddenginx fastcgi错误primary scripnginx服务器的反向代理proxy_pasnginx 403 forbidden的解决办法nginx伪静态配置和常用rewrite伪详解nginx服务器中配置超时时间的nginx下301重定向域名的方法小结windows下nginx+php5的安装与配置nginx服务器上搭建图片缓存服务的基本配置nginx安装及配置详细分析详解nginx前端根据$remote_addr分发方法linux中安装nginx的正确步骤详解nginx反向代理实现kibana登录认证功能nginx中共享session会话配置方法例子nginx配置gzip压缩页面nginx rewrite 伪静态配置参数详细说明添加nginx代理配置只允许内部ip访问的实现nginx中用json格式记录日志的配置示例
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved