`
huanglz19871030
  • 浏览: 242978 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

nginx笔记二

 
阅读更多

rewrite是通过正则表达式来改变uri的功能,如何重定向和选择配置文件,是由变量决定的

       如果这个指令在server层级,那么它将在请求的location被确定之前就被执行。如果在那个location中,也设定了rewrite指令,那么指令仍旧会执行。如果location内部的rewrite指令执行后,uri改变了,那么新的uri的location会被重新计算,这个循环执行10次,nginx就会返回错误500.

       首先要说一下主要的几个正则表达式

\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。
^ 匹配输入字符串的开始位置。
$ 匹配输入字符串的结束位置。
* 匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 * 等价于{0,}。
+ 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。
? 匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 {0,1}。
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。

 

 

作用:
1.一些动态的URL伪装成静态html,便于搜索引擎抓取。
2.一些旧的链接要进行更新兼容。

指令:
if rewrite set return break;

标识:
last – 基本上都用这个Flag。
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302 ,浏览器会显示跳转后的URL地址
permanent – 返回永久重定向的HTTP状态301 ,浏览器会显示跳转后的URL地址

实例:

将旧的php请求不同的转发

Java代码  收藏代码
  1. server{  
  2.     listen      8011;  
  3.     server_name gg.xxx.com 127.0.0.1;  
  4.     #匹配带有这些字符的URL请求  
  5.     location ~ /gg/client/client_gg.php {  
  6.             #转发到go.do,参数会自动附加  
  7.             rewrite ^(.*)$ http://gg.xxx.com:81/go.do last;  
  8.   }  
  9.     #下面的是广告,跳转到www主站  
  10.     location ~ /gg/gg_go\.php {  
  11.             #直接跳转www主站,不会附加参数  
  12.             return  http://www.xxx.com/ ;  
  13.   }  
  14. }  

分享到:
评论

相关推荐

    nginx笔记.zip

    nginx笔记nginx笔记nginx笔记nginx笔记nginx笔记nginx笔记nginx笔记nginx笔记

    nginx笔记+资料

    nginx笔记+资料

    nginx笔记+资料.txt

    nginx笔记+资料 nginx优化实战 服务器集群及优化笔记 优化实验原始数据 location的解析过程

    nginx 笔记和资料

    关于nginx的一些资料,nginx 的安装,启动,Nginx的信号控制,Nginx配置等具体文档

    nginx笔记pdf版本

    nginx笔记

    Nginx笔记快速上手

    Nginx笔记

    Nginx学习笔记.zip

    Nginx教程

    nginx笔记笔记笔记

    nginx.docnginx.docnginx.doc

    Nginx 源码分析笔记

    Nginx 源码分析笔记 自己的源码分析笔记,未完。

    nginx学习笔记.zip

    nginx学习笔记.zip

    nginx课程笔记文件.zip

    里面有关于nginx所有的配置具体的介绍,其中有nginx怎样配置负载均衡,图片服务器,资源压缩,黑白名单限制,websocket反向代理,rewrite重写规则,服务器缓存设置,ssl证书配置,keepalive部署nginx集群,openResty...

    nginx笔记+JAVA+运维

    全网最详细的nginx笔记

    Nginx学习笔记

    Nginx学习笔记 Nginx 是一个流行的开源 Web 服务器软件,能够处理高并发请求,常用于搭建高性能的 Web 服务器。本文将对 Nginx 的安装、配置、日志管理等方面进行详细的介绍。 一、Nginx 的安装 Nginx 的安装可以...

    nginx笔记+资料.zip

    nginx作为linux服务器的应用之一,有着举足轻重的地位,并且nginx的市场份额也在逐步猛增,学好Nginx是技术人员必备技能,包括开发人员。...Nginx笔记;nginx优化实战;服务器集群及优化笔记.doc;优化实验原始数据.txt

    nginx学习笔记

    nginx集群,分布式服务架构,特点:热部署,可高并发连接,低内存消耗,处理响应快,可靠性高等

    黑马23期Linux+Nginx笔记

    黑马23期Linux+Nginx 的笔记,介绍如何搭建Nginx环境(Linux下)

    Nginx笔记+资料

    Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。 其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例...

    nginx课堂笔记.pdf

    非常详细的Nginx的课堂笔记,让你回味无穷, Nginx ...Nginx 是由俄罗斯人 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor Sysoev 在建立的项目时,使用基于 BSD 许可。

    nginx课堂笔记01

    nginx课堂笔记01

Global site tag (gtag.js) - Google Analytics