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

商务网站开发流程有哪三个阶段网站制作 杭州

商务网站开发流程有哪三个阶段,网站制作 杭州,新的网站做淘宝客,产品线上推广方案本篇文章主要对break#xff0c;if#xff0c;return#xff0c;rewrite和set这5个指令的执行顺序进行深究#xff0c;如需了解这5个指令的功能和配置#xff0c;请参考另一篇文章 Nginx(三) 配置文件详解 由于文章篇幅较长#xff0c;所以我就先把结论贴出来#xff0c…       本篇文章主要对breakifreturnrewrite和set这5个指令的执行顺序进行深究如需了解这5个指令的功能和配置请参考另一篇文章 Nginx(三) 配置文件详解 由于文章篇幅较长所以我就先把结论贴出来再看测试结果。 1.server层执行完break指令后该层级所有跟ngx_http_rewrite_module模块相关的指令都不再被执行但不影响location层ngx_http_rewrite_module模块相关的指令执行 2.location层执行完break指令后会直接终止整个请求处理过程后续其它指令也不再被执行且请求不会被重定向nginx根据最终请求路径(此时不再匹配location)将请求结果返回给客户端 3.无论在哪个层级执行完return指令后请求处理过程都会立刻终止并将指定的code、重定向URL、响应正文文本返回给客户端。 4.server层ngx_http_rewrite_module模块相关的指令是按照配置顺序依次执行 说完结论后我们再将原文3.3章节的所有知识结合起来一起做个测试。 基本配置如下 http {log_subrequest on; # 开启将子请求日志记录到access.log中log_format format2 escapejson {SN:$sn, #自定义变量sn http_host:$http_host,remote_addr:$remote_addr,time_iso8601:$time_iso8601,request:$request,http_referer:$http_referer,request_time:$request_time,request_length:$request_length,status:$status,bytes_sent:$bytes_sent,#body_bytes_sent:$body_bytes_sent,user_agent:$http_user_agent,};access_log logs/access.log format2;absolute_redirect on;server_name_in_redirect off;port_in_redirect on;root pages; # 根目录设置为psges该目录下只有index.html、test.html、one.html、two.html、three.htmlserver {listen 8688;server_name www.read*******.cn;root pages;# 下面配置本次测试的指令······} } 测试1 server {···break;rewrite /t1 /test.html;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}return 500;location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果404error.log日志输出*878 open() /usr/local/nginx/pages/t1 failed (2: No such file or directory)access.log日志输出{SN:最终请求地址host:8688/t1结论 1.在请求重写指令未执行前就执行了break导致server层级下所有跟ngx_http_rewrite_module模块相关的指令都不再执行所以请求并未重写请求路径不变。if、set、return指令都未执行。 2.location中未匹配到/t1且pages文件夹下没有t1文件所以返回404。 测试2 server {···rewrite /t1 /test.html;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}return 500;location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果200error.log日志输出无access.log日志输出{SN:2最终请求地址host:8688/test.html结论 请求被重写执行完break后set $sn 3和return指令未执行。 server层ngx_http_rewrite_module 模块相关指令按照配置顺序依次执行。 server层执行break后该层级所有跟ngx_http_rewrite_module模块相关的指令都不再执行。 测试3 server {···rewrite /t1 /test.html;return 500;set $sn 1; # 该变量最终值将记录到access.log中。location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果500error.log日志输出无access.log日志输出{SN:最终请求地址结论server层执行完return后请求处理过程会立刻终止并将指定code返回给客户端。 测试4 server {···rewrite /t1 /t2;rewrite /t2 /t3;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}location /t2 {rewrite /t2 /test.html;}location /t3 {rewrite /t3 /t4;if ($sn 2) {set $sn 31;rewrite /t4 /t5;break;set $sn 32;rewrite /t5 /t6;}set $sn 33;rewrite /t5 /p1;rewrite /t6 /p2;}location /t5 {set $sn 51;rewrite /t5 /p3;}location /t6 {set $sn 61;rewrite /t6 /p4;}location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果404error.log日志输出*890 open() /usr/local/nginx/pages/t5 failed (2: No such file or directory)access.log日志输出{SN:31最终请求地址host:8688/t5结论 1.server或location层ngx_http_rewrite_module模块相关的指令正常情况下按照配置顺序依次执行 2.server层执行break后该层级所有跟ngx_http_rewrite_module模块相关的指令都不再执行但不影响location层ngx_http_rewrite_module模块相关指令的执行。 3.location层执行完break指令后会直接终止整个请求处理过程后续其它指令也不再被执行且请求不会被重定向nginx根据最终请求路径(此时不再匹配location)将请求结果返回给客户端。 测试5 server {···rewrite /t1 /t2;rewrite /t2 /t3;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}location /t2 {rewrite /t2 /test.html;}location /t3 {rewrite /t3 /t4;return 502;if ($sn 2) {set $sn 31;rewrite /t4 /t5;break;set $sn 32;rewrite /t5 /t6;}set $sn 33;rewrite /t5 /p1;rewrite /t6 /p2;}location /t5 {set $sn 51;rewrite /t5 /p3;}location /t6 {set $sn 61;rewrite /t6 /p4;}location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果502error.log日志输出无access.log日志输出{SN:2最终请求地址结论location层执行完return后请求处理过程会立刻终止并将指定code返回给客户端。 测试6 server {···rewrite /t1 /t2;rewrite /t2 /t3;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}location /t2 {rewrite /t2 /test.html;}location /t3 {if ($sn 2) {rewrite /t3 /p1;rewrite /p1 /t4;}if ($sn 3) {return 500;}}location /t5 {rewrite /t5 /t6;}location /t4 {rewrite /t4 /t5;}location /t6 {set $sn 61;rewrite /t6 /p2;}location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果404error.log日志输出*897 open() /usr/local/nginx/pages/p2 failed (2: No such file or directory)access.log日志输出{SN:61最终请求地址host:8688/p2结论 1.server指令按序执行完毕后根据URI匹配location如果匹配到就进入对应location再按序执行该模块下的指令。执行完毕后如果URI被重写就继续匹配location直到找到最终请求路径。循环匹配location这个过程的循环次数不得超过10次。 测试7 server {···rewrite /t1 /t2;rewrite /t2 /t3;set $sn 1; # 该变量最终值将记录到access.log中。if ($sn 1) {set $sn 2;break;set $sn 3;}location /t2 {rewrite /t2 /test.html;}location /t3 {rewrite /t3 /t4;return 502;if ($sn 2) {set $sn 31;rewrite /t4 /t5 last;break;set $sn 32;rewrite /t5 /t6;}set $sn 33;rewrite /t5 /p1;rewrite /t6 /p2;}location /t5 {set $sn 51;rewrite /t5 /p3;}location /t6 {set $sn 61;rewrite /t6 /p4;}location / {index index.html index.htm;} } 请求地址host:8688/t1请求结果404error.log日志输出*897 open() /usr/local/nginx/pages/p3 failed (2: No such file or directory)access.log日志输出{SN:51最终请求地址host:8688/p3结论 请求地址host:8688/t1请求结果error.log日志输出access.log日志输出{SN:最终请求地址结论
http://www.hkea.cn/news/14286362/

相关文章:

  • 网站建设公司的电话网站分页设计作用
  • 承接各类网站建设给别人做网站别人经营违法
  • 电商网站推广常见问题图片制作怎么弄
  • 专门用来查找网址的网站网站开发移动端网站
  • 如何做网站企划案衡水搜索引擎优化
  • 无锡网站建设公司地址网络营销推广的作用
  • 网站建设资料准备标准建设部网站证件查询
  • 网站建设企业宣传中国深圳航空公司官网
  • 为何建设单位网站自适应网站建设案例
  • 山西网站制作公司哪家好网页设计与制作模块1课后答案
  • 发布软文网站wordpress朗读功能
  • 做淘宝客网站多少钱内蒙古城乡住房建设厅网站
  • 网络公司代做的网站注意事项圣沃建设集团官方网站
  • 中国建设银行预约网站网站上不去首页seo要怎么办
  • 甘肃网站备案审核时间没有网站 可以做cpa
  • 公关策划网站建设合肥瑶海区网站建设价格
  • 互联网站建设维护是做什么的链接点击量软件
  • 网站页面和图片设计wordpress菜单设置图标
  • 旅游网站开发参考文献体育类网站 设计
  • 网站建设评估室内设计培训内容
  • 青岛市城乡建设局网站医疗网站建设代理商
  • 电子商务网站建设的策划书一二三四免费观看视频中文版在线
  • 靖江建设行业协会网站互联网保险的发展
  • 纯手工seo公司沈阳网站优化哪家好
  • 永州高端网站建设国外工业设计网站
  • 成立公司注意事项济南网络seo公司
  • 高端定制网站建设制作下载ps软件免费版
  • 公司网站建设付款分录绍兴聚氨酯制作公司
  • 城乡建设举报网站商业网站设计专业
  • 潍坊高级网站建设推广wordpress仿36kr主题