用window.location处理解析当前页面URL window.location 对象所包含的属性 属性 描述 hash 从井号(#)开始的URL(锚点) host 主机名和当前URL的端口号 hostname...主机名 href 完整的URL pathname 路径 port 端口号 protocol 协议 search 参数 js 脚本捕获页面 GET 方式请求的参数?...其实直接使用 window.location.search 获得,然后通过 split 方法结合循环遍历自由组织数据格式。...大概处理如下: var searchURL = window.location.search; searchURL = searchURL.substring(1, searchURL.length...("a");//GET['a'],取得URL参数a 本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息: 原文出处:Yiiven https://www.yiiven.cn/js-window-location.html
"window.location.href"、"location.href"是本页面跳转. "parent.location.href" 是上一层页面跳转...."top.location.href" 是最外层的页面跳转....举例说明: 如果A,B,C,D都是html,D是C的iframe,C是B的iframe,B是A的iframe,如果D中js这样写 "window.location.href"、"location.href...":D页面跳转 "parent.location.href":C页面跳转 "top.location.href":A页面跳转 如果D页面中有form的话, : form提交后...D页面跳转 : form提交后弹出新页面 : form提交后C页面跳转 : form提交后A页面跳转 如果访问的是iframe里面的页面,重新加载最外层的页面
1、Location的语法规则 语法规则:location [=||*|^~] /uri/ {…} 下面详细解释上面出现的符号 符号 含义 = =开头表示精准匹配 ^~ ^~开头表示url以某个常规字符串开头...} #正则匹配覆盖普通匹配测试 #会覆盖普通匹配,不会覆盖=和^~ location =/re/a.js {#访问/re/a.js,不会被后面的正则覆盖...(htm|js|css)$ {#覆盖/re/a.htm路径 echo "match first"; } location ~ /rex/a...(htm|js|css)$ {#覆盖/re/a.htm路径 echo "match second"; } location ~ /rex/...(htm|js|css)$ {#覆盖/re/a.htm路径 echo "match third"; } } 4、注意 网上有很多下面错误或者不完善的说法
window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面。...一些例子: location.hostname 返回 web 主机的域名 location.pathname 返回当前页面的路径和文件名 location.port 返回 web 主机的端口 (80 或.../js/js_window_location.asp Window Location Pathname location.pathname 属性返回 URL 的路径名。...实例 返回当前 URL 的路径名: document.write(location.pathname); 以上代码输出为: /js/js_window_location.asp...Window Location Assign location.assign() 方法加载新的文档。
location& root & alias 匹配规则 已=开头表示精确匹配 如 A 中只匹配根目录结尾的请求,后面不能带任何字符串。...[ configuration H ] } location ~* /js/.*/\.js 顺序(no优先级:) (location =) > (location 完整路径) > (location...,不能匹配location指定目录上一级目录中的内容。...很多情况下rewrite也会写在location里,它们的执行顺序是: 执行server块的rewrite指令 执行location匹配 执行选定的location中的rewrite指令 如果其中某步URI...这里 last 和 break 区别有点难以理解: last一般写在server和if中,而break一般使用在location中 last不终止重写后的url匹配,即新的url会再从server走一遍匹配流程
Nginx配置中location、root和alias的关系一直很让人困惑,查询好多资料也没能搞明白,于是自己进行了实际操作,整理一篇小白看的懂得文章!欲知详情,请往下看!...Nginx配置中的location、root、alias location & root 初始配置 [root@adailinux vhost]# cat rio.conf server {...和root组合相当于在root指定目录下进行location匹配,location所匹配内容必须保证在root指定目录的子目录,否则配置无效,而且location只能向下匹配,不能匹配location指定目录上一级目录中的内容...与alias组合,需要保证location匹配目录与alias指定目录级别相同,否则配置无效,与location和root组合相同的是,location所匹配内容也只能向下匹配。...alias不会使用location后面配置的路径)。
最近在线上进行nginx规则的调整的时候遇到一个问题,发现在location匹配时候可能会踩到的一个坑。...location在匹配规则的时候匹配的是归一化之后的URL,比如多个斜杠或者URL中带”.”, “..”的都会被 归一化。 而在内部rewrite的时候新的URL地址是不会再次被归一化的。...{ set $testapi 1; } location /newapi { # ... } ```` 对于上面的配置中,rewrite的时候不小心多写了个斜杠,对于这个配置,...如果用地址:/api访问的话 /newapi/api 这个location是不能被匹配的。...而用地址/newapi//api直接访问是可以匹配到/newapi/api这个location的。 本质上是因为用户直接访问的URL会先归一化处理,而rewrite之后是不会处理的。
~* 分别为区分大小写不匹配及不区分大小写不匹配 ^~ 开头表示uri以某个常规字符串开头 首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配, 最后是交给 / 通用匹配。...注意规则匹配到则执行匹配 2、举例 设置缓存 location ~* \....(js|css|jpg|jpeg|gif|png|swf)$ { if (-f $request_filename) { expires 1h; break; } } 禁止访问txt和doc...目录 location ~* \....break – 中止Rewirte,不在继续匹配 redirect – 返回临时重定向的HTTP状态302 permanent – 返回永久重定向的HTTP状态301 4、判断全局变量 -f和!
上一次提到,在报表软件FineReport的JavaScript开发中,可以访问并处理的HTML DOM对象有windows、location、document三种。...这次就继续介绍后两种,location和document对象。 Location Location 对象包含有关当前 URL 的信息。...Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。...Document 对象使我们可以从脚本中对HTML页面中的所有元素进行访问。...因为一个文档中的 name 属性可能不唯一(如 HTML 表单中的单选按钮通常具有相同的 name 属性),所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。
官网 https://nginx.org/en/docs/http/ngx_http_core_module.html#location location 规则详解 Nginx的location指令工作原理如下...以下是基于提供的配置的示例: location = / { [ 配置 A ] } location / { [ 配置 B ] } location /documents/ {...例如,在上述配置中,如果多个条件都满足,比如在第一个if中没有使用break,那么下一个条件也会被执行。...(在Nginx中没有if-else这样的结构) 在这种情况下,可以使用多个if语句来满足不同条件下的处理逻辑。...但需要注意的是,if语句是在Nginx的rewrite模块中执行的,并且在性能方面可能会有一些影响。
用一句话简单概括 Nginx 的 location 匹配规则是:“正则 location ”让步 “普通 location”的严格精确匹配结果;但覆盖 “普通 location ”的最大前缀匹配结果。... ”的“严格精确”匹配会终止对正则 location 的搜索。...( exact match )”的,则 nginx 不再尝试后面的正则 location ;如果普通 location 的匹配结果是“最大前缀”,则正则 location 的匹配覆盖普通 location...也就是前面说的“正则 location 让步普通location 的严格精确匹配结果,但覆盖普通 location 的最大前缀匹配结果”。...allow all; } } 把例题 2 中的 location / {} 修改成 location ^~ / {} ,再看看测试结果: URI 请求 修改前 修改后 curl
2017-05-08 05:52:53 window.location 对象用于获得当前页面的地址 (URL),并把浏览器重定向到新的页面。...window.location 对象在编写时可不使用 window 这个前缀。...location中包含着ulr的一些其他信息,通过不同的属性来获取不同的结果,如下: location.hostname 返回 web 主机的域名 location.pathname 返回当前页面的路径和文件名...location.port 返回 web 主机的端口 (80 或 443) location.protocol 返回所使用的 web 协议(http:// 或 https://) location.href...返回完整的url地址 location.hash 设置或获取 href 属性中在井号“#”后面的分段 location.search 设置或获取 href 属性中跟在问号后面的部分
一、location用法总结 location可以把不同方式的请求,定位到不同的处理方式上. 1.location的用法 location ~* /js/.*/\.js 以 = 开头,表示精确匹配;如只匹配根目录结尾的请求...rewrite只能放在 server{}, location{}, if{}中,并且只能对域名后边的除去传递的参数外的字符串起作用。...很多情况下rewrite也会写在location里,它们的执行顺序是: 1 执行server块的rewrite指令 2 执行location匹配 3 执行选定的location中的rewrite指令 如果其中某步...这里 last 和 break 区别有点难以理解: last一般写在server和if中,而break一般使用在location中 last不终止重写后的url匹配,即新的url会再从server走一遍匹配流程...中包含"post=140",永久重定向到example.com location ~* \.
,后面是要匹配的字符,花括号中是要执行的操作。...^~ 表示如果该符号后面的字符是最佳匹配,采用该规则,不再进行后续的查找。 匹配过程 对请求的url序列化。例如,对%xx等字符进行解码,去除url中多个相连的/,解析url中的.,..等。...因为B表示任何以/开头的URL都匹配。在上面的配置中,只有B能满足,所以匹配B。 location @name的用法 @用来定义一个命名location。主要用于内部重定向,不能用来处理正常的请求。...值得注意的是,命名location中不能再嵌套其它的命名location。 URL尾部的/需不需要 关于URL尾部的/有三点也需要说明一下。第一点与location配置有关,其他两点无关。...location中的字符有没有/都没有影响。也就是说/user/和/user是一样的。 如果URL结构是https://domain.com/的形式,尾部有没有/都不会造成重定向。
综:window.location.href表示重定向,后面跟着的是完整的url地址,与其相似的还有window.location.hash, 下面来比较window.location.href和window.locaiton.hash...(1)window.location.href 得到和使用的是完整的url,比如window.location.href=”www.baidu.com”表示的是重新定向,...也可以通过window.location.href得到a标签的完整的href,比如如果使用href,那 么可以得到完整的链接(url) (2)window.location.hash...相比如href,通过window.location.hash并不会跳转到新的链接,只会在当前链接里面 改变锚链。...并且如果有通过window.location.hash得不到完整的链接(URL),仅仅得到#book.
实际上这一类问题也是一类组合优化问题,选址问题、P-中位问题的研究都能够为这类决策提供强有力的支持。...也就是说目前我们是在两个不一样的环节中做优化,即选址环节和配送环节。...但是在实际应用场景中,还是需要有比较稳定的需求,毕竟如果需求变动太大的话是不可能重新选址的。...其中多车场VRP中对应的车场就是这个子集中的设施。...基于群体的元启发式算法和单体的元启发式算法都能够很好地运用到这类问题的求解中。
在移动wap中,经常会使用window.location.href去跳转页面,这个方法在绝大多数浏览器中都不会 存在问题,但早上测试的同学会提出了一个bug:在安卓手机的微信自带浏览器中,这个是失效的...,并没有跳转; 原来的代码: window.location.reload(location.href); 初步判断可能是缓存的问题,首先想到的解决办法就是在要跳转的url后面加个时间戳,告知浏览器这是一个新的请求...; window.location.reload(location.href+'?...time='+((new Date()).getTime())); 然而并没有什么卵用,看了下js文档: href是location对象的一个属性,reload()则是location对象的方法 所以对于...但对于安卓手机微信中的浏览器,reload只是从缓存中装载文档,所以当你使用该方法,是失效的; 解决办法就是,使用location.href代替reload(),而且在以后的使用中也强烈建议大家使用location.href
tquencether=tquencether,Status=Status} success: function (data) { if (data == '1') { ; // window.location.href...= 'ModelDatasequence.aspx'; // location.href = 'ModelDatasequence.aspx'; // window.location.href...你的ajax是同步的,所以提交表单动作被挂起直到ajax完毕后(此时执行请求过一次服务器),表单会提交,这样就会执行页面指定的action的地址, 而ajax回调success href的链接赋值不成功...,而且用的是同步的方式,并且你是通过点击了type类型为submit的按钮来触发这个ajax。...这个时候,首先你点击了submit,它会提交表单,但是由于你用了ajax的同步操作,submit的提交被阻塞,ajax先执行,这个时候,如果你在ajax的回调函数(如:success)中写了document.location.href
/username 在我印象中,这是主流网站第一次将”#”大规模用于直接与用户交互的关键URL中。这表明井号(Hash)的作用正在被重新认识。...本文根据HttpWatch的文章,整理与井号有关的所有重要知识点。 一、#的涵义 #代表网页中的一个位置。其右面的字符,就是该位置的标识符。...二、HTTP请求不包括# #是用来指导浏览器动作的,对服务器端完全无用。所以,HTTP请求中不包括#。...五、改变#会改变浏览器的访问历史 每一次改变#后的部分,都会在浏览器的访问历史中增加一个记录,使用”后退”按钮,就可以回到上一个位置。...六、window.location.hash读取#值 window.location.hash这个属性可读可写。
=前缀的指令严格匹配这个查询。如果找到,停止搜索。 2. 所有剩下的常规字符串,最长的匹配。如果这个匹配使用^前缀,搜索停止。 3. 正则表达式,在配置文件中定义的顺序。 4.... B ] } location ^~ /images/ { # 匹配任何以 /images/ 开始的请求,并停止匹配 其它location [ configuration C ] } location...location /images/ { # 匹配任何以 /images/ 开始的请求,并停止匹配 其它location [ configuration C ] } location ~* \...如果为真,执行定义在大括号中的rewrite模块指令,并将if指令中的配置指定给请求。if指令会从上一层配置中继承配置。...如果正则表达式中包含字符“}”或者“;”,整个表达式应该被包含在单引号或双引号的引用中。 使用“-f”和“!-f”运算符检查文件是否存在; 使用“-d”和“!
领取专属 10元无门槛券
手把手带您无忧上云