当前位置: 首页 > news >正文

重庆高铁建设网站做苗木的用什么网站

重庆高铁建设网站,做苗木的用什么网站,企业安全文化建设中的安全承诺,网站的栏目Nginx的location块相关知识积累 01-location块的优先级 注意:如果Nginx的配置中有多个location块,那么各location块的匹配优先级并不是完全按照代码的先后顺序来决定各location优先级的。而是按下面的规则来决定的: 在 Nginx 中&#xff0c…

Nginx的location块相关知识积累

01-location块的优先级

注意:如果Nginx的配置中有多个location块,那么各location块的匹配优先级并不是完全按照代码的先后顺序来决定各location优先级的。而是按下面的规则来决定的:
在 Nginx 中,location块的匹配是按照以下原则的:

  1. 前缀匹配: 具有更长前缀的 location 会优先匹配。如果一个 location 的前缀是另一个 location 的前缀,那么较长前缀的 location 会被优先匹配。

  2. 正则表达式匹配: 如果存在正则表达式匹配的 location,那么正则表达式匹配会优先于前缀匹配。在正则表达式匹配中,越具体的规则(越长或者包含特定字符)会优先匹配。

比如有下面的Nginx的location配置代码:

    location / {proxy_pass http://127.0.0.1:55113;}#301 Not Config#拒绝访问的文件location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md){return 404;}#静态文件location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;error_log off;access_log /dev/null;}location ~ .*\.(js|css)?${expires 12h;error_log off;access_log /dev/null;}

在这个 Nginx 配置中,按照以上原则,location块的优先级顺序是:

  1. /:最基本的前缀匹配,匹配所有请求。因为它是最短的前缀匹配,而不是正则匹配,所以是最低优先级。

  2. ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md):正则表达式匹配,匹配特定文件路径的请求。

  3. ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$:正则表达式匹配,匹配以指定后缀结尾的静态文件请求。

  4. ~ .*\.(js|css)?$:正则表达式匹配,匹配以指定后缀结尾的静态文件请求。

即第1个匹配的优先级是最低的,即上面的4个location块被分成了两组:
第一组是第1个,属于前缀匹配;
第二组是第2、3、4个,都属于正则匹配。
如果一个请求能同时匹配第一组和第二组,那么将使用第二组中的location块,因为第二组的优先级比第一级的优先级高。如果一个请求能同时匹配第2、3、4个 location 块,将选择第2个 location 块,因为它在配置文件中出现得更早。

02-常见正则表达式

关于正则表达式,之前已经写了些文章了,在看以下内容前可以先复习一下。
01-Nginx中的正则匹配表达式操作符~~*的含义
02-正则表达式中+ 与 * 有啥区别?
03-Python的正则表达式re模块的compile()方法有什么作用?
04-正则表达式中的方括号[]有什么用?
05-正则表达式中的大括号-花括号{}有什么用?
06-Python正则表达式re模块的相关知识积累与博文汇总–这篇文章强烈建看一下!

02-01-~~*

~操作符表示区分大小写的匹配。
~*操作符表示不区分大小写的匹配。

02-02-~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

~操作符表示区分大小写的匹配。
^操作符表示匹配字符串的开头位置,详情见:Python正则表达式re模块的相关知识积累与博文汇总的第04点。这里操作符^/合起来的^/表示匹配以斜杠/开头的路径。
\表示转义,因为点在正则表达式中是一个特殊字符,表示匹配任意字符(除了换行符)。所以\. 是为了匹配实际的点。
所以整个正则表达式:

~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

表示匹配以下面为前缀的URL路径:

/.user.ini
/.htaccess
/.git
/.svn
/.project
/LICENSE
/README.md

即网站根目录下的文件或目录.user.ini、.htaccess、.git、.svn、.project、LICENSE、README.md是禁止访问的。
注意:URL路径:/.svn/configure.txt 也是被匹配的。因为前缀/.svn/得到了匹配。

02-3-~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

出自:

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;error_log off;access_log /dev/null;}

~操作符表示区分大小写的匹配。
.*.在正则表达式中是一个特殊字符,表示匹配任意字符(除了换行符)。*表示匹配前面的模式零次或多次。整个合起来是说“匹配任意字符零次或多次”。
\.:其中的\表示转义,因为点在正则表达式中是一个特殊字符,表示匹配任意字符(除了换行符)。所以\. 是为了匹配实际的点。
$:表示在字符串的结尾处进行匹配。
所以上面这个正则表达式是匹配图片类静态资源。

02-04-~ .*\.(js|css)?$

~ .*\.(js|css)?$

出自:

    location ~ .*\.(js|css)?${expires 12h;error_log off;access_log /dev/null;}

~操作符表示区分大小写的匹配。
.*.在正则表达式中是一个特殊字符,表示匹配任意字符(除了换行符)。*表示匹配前面的模式零次或多次。整个合起来是说“匹配任意字符零次或多次”。
\.:其中的\表示转义,因为点在正则表达式中是一个特殊字符,表示匹配任意字符(除了换行符)。所以\. 是为了匹配实际的点。
?: 这表示前面的字符(这里是 (js|css))是可选的,可以出现零次或一次。在这里,它表示文件名可能以 .js.css 结尾,也可能没有这两者。
$:表示在字符串的结尾处进行匹配。

所以上面这个正则表达式是匹配以 .js.css 或以.结尾但无具体的文件后缀名结尾的静态资源。

03-常用语句

03-1-expires

例1:

    location ~ .*\.(js|css)?${expires 12h;error_log off;access_log /dev/null;}

例2:

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;error_log off;access_log /dev/null;}

expires 12h;: 此指令设置内容的过期时间。它告诉客户端(浏览器)将文件缓存 12 小时 (12h)。这可以通过在指定的时间范围内减少客户端反复下载相同静态文件的需求来提高网站性能。

expires 30d;: 此指令设置内容的过期时间。它告诉客户端(浏览器)将文件缓存 30 天 (30d)。这可以通过在指定的时间范围内减少客户端反复下载相同静态文件的需求来提高网站性能。

03-2-error_log off

例:

    location ~ .*\.(js|css)?${expires 12h;error_log off;access_log /dev/null;}

error_log off;: 此指令关闭了匹配此位置的请求的错误日志记录。这意味着与 JavaScript 和 CSS 文件相关的请求错误将不会被记录。

03-3-access_log

例:

    location ~ .*\.(js|css)?${expires 12h;error_log off;access_log /dev/null;}

access_log /dev/null;: 此指令将访问日志路径设置为 /dev/null,有效地禁用了与此位置匹配的请求的访问日志记录。访问日志记录有关每个请求的信息,通过将其重定向到 /dev/null,你正在丢弃这些特定请求的详细访问日志信息。如果不需要为某些静态文件生成详细的访问日志,这样做可以减少磁盘 I/O 并提高性能。

http://www.yayakq.cn/news/448941/

相关文章:

  • 武冈 网站建设技术支持公司做的网站怎么查
  • 快站优惠券去哪里找福建中海建设有限公司网站
  • 推广型网站开发软件国外做彩票网站推广是合法的吗
  • 集美网站建设员工培训课程
  • 网站开发语言 微信接口锡林郭勒盟建设工程造价管理网站
  • 网上做任务的网站有哪些汕头网站建设系统
  • 网站建站是 什么英文营销网站建设
  • 遵义网站建设美食门户类网站模版
  • 你认为优酷该网站哪些地方可以做的更好_为什么?网站开发+自动生成缩略图
  • 网站被恶意解析全网营销型网站建设公司
  • 建设云个人网站网站开发设计报告书
  • 卖友情链接的哪来那么多网站做电商运营需要具备什么能力
  • 宝思哲手表网站建设培训学校网站
  • 国内免费建站网站招聘网站建设工作总结
  • 找人做公司网站贵阳金阳网站建设公司
  • 公司做网站建设价格做阿里巴巴小企业网站
  • 专业做网吧的公司南昌网站seo多少钱
  • 网站加图标网络舆情分析论文
  • 高端网站建设推荐万维科技wordpress一键安装脚本
  • 新手要如何让网站被收录一套完整新媒体运营方案
  • 无锡网站设计网络销售
  • 广州网站搭建哪家好集团培训网站建设
  • 设计学校网站模板免费下载高新区网站建设 意义
  • 怎么做自己的html网站南昌官网seo收费标准
  • 国内互动网站建设现在lol谁做教学视频网站
  • 网站建设中企动力强网站网页能自己做吗
  • wordpress能做多大的站济南网站优化费用
  • 运营网站是多少wordpress 搜索没反应
  • 铁路建设网站多少电子商务网站建设的步骤一般分为
  • iis7 发布静态网站精通网站建设工资多少钱