下载此文档

nginx伪静态重定向包括域名、目录、文件等方法.doc


文档分类:建筑/环境 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
nginx伪静态重定向包括域名、目录、文件等方法在网站建设中需要网页重定向的情况很多:如网页目录结构变动,网页重命名、网页的扩展名改变、网站域名改变等。如果不做重定向,用户的收藏和搜索引擎数据库中的旧地址只能让访客得到一个404错误信息页面,访问流量白白丧失。不仅如此,之前该页面的一切积累(比如PR值)就都白费了。 301重定向不仅能使页面实现自动跳转,对于搜索引擎来说,也可能可以传递PR值 1、将多个域名指向同一web目录: ; rewrite^/$/redirect; 2、将不带: ; if($host!=""){ rewrite^/(.*)$/$1permanent; } nginx重定向规则详细介绍 rewrite命令 nginx的rewrite相当于apache的rewriterule(大多数情况下可以把原有apache的rewrite规则加上引号就可以直接使用),它可以用在server,location和IF条件判断块中,命令格式如下: rewrite正则表达式替换目标flag标记 flag标记可以用以下几种格式: last–基本上都用这个Flag。 break–中止Rewirte,不在继续匹配 redirect–返回临时重定向的HTTP状态302 permanent–返回永久重定向的HTTP状态301 例如下面这段设定nginx将某个目录下面的文件重定向到另一个目录,$2对应第二个括号(.*)中对应的字符串: location/download/{ rewrite^(/download/.*)/m/(.*)\..*$$1/nginx-rewrite/$; } nginx重定向的IF条件判断在server和location两种情况下可以使用nginx的IF条件判断,条件可以为以下几种: 正则表达式如: 匹配判断~为区分大小写匹配;!~为区分大小写不匹配~*为不区分大小写匹配;!~为不区分大小写不匹配例如下面设定nginx在用户使用ie的使用重定向到/nginx-ie目录下: if($http_user_agent~MSIE){ rewrite^(.*)$/nginx-ie/$1break; } 文件和目录判断-f和!-f判断是否存在文件-d和!-d判断是否存在目录-e和!-e判断是否存在文件或目录-x和!-x判断文件是否可执行例如下面设定nginx在文件和目录不存在的时候重定向: if(!-e$request_filename){ proxy_pass/; } return 返回http代码,例如设置nginx防盗链: location~*\.(gif|jpg|png|swf|flv)${ valid_referersnoneblockedp:///; if($invalid_referer){ return404; } } set 设置nginx变量 301重定向方法进行了301重定向,合并,,第一种方法是判断nginx核心变量host(老版本是http_host): server{ ; if($host!='){ rewrite^/(.*)$/$1permanent; } ... } 第二种方法: server{ ; rewrite^/(.*)/$1permanent; } 测试了第一种方法ok,这两种方法中,permanent是关键,详细说明见nginx重定向规则说明。 last–基本上都用这个Flag。 break–中止Rewirte,不在继续匹配 redirect–返回临时重定向的HTTP状态302 permanent–返回永久重定向的HTTP状态301 好了,现在可以检查结果第二种方法没有测试成功... nginxrewrite伪静态配置参数详细说明(转) http://hi./hx10/blog/item/ nginxrewrite伪静态配置参数和使用例子附正则使用说明正则表达式匹配,其中: *~为区分大小写匹配*~*为不区分大小写匹配*!~和!~*分别为区分大小写不匹配及不区分大小写不匹配文件及目录匹配,其中: *-f和!-f用来判断是否存在文件*-d和!-d用来判断是否存在目录*-e和!-e用来判断是否存在文件或目录*-x和!-x用来判断文件是否可执行 flag标记有: *last相当于Apache里的[L]标记,表示完成rewrite *break终止匹配,不再匹配后面的规则*redirect返回302临时重定向地址栏会显示跳转后的地址*permanent返回301永久重定向地址栏会显示跳转后的地址一些可用的全局变量有,可以用做条件判断(待补全) $

nginx伪静态重定向包括域名、目录、文件等方法 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人bodkd
  • 文件大小69 KB
  • 时间2019-05-11