http://www.3lian.com/edu/2013/07-01/77550.html

首先看一个完整代码示例,关于nginx 301 302跳转的。

  301跳转设置:

  server {

  listen 80;

  server_name downcc.com;

  rewrite ^/(.*) http://www.downcc.com/$1 permanent;

  access_log off;

  }

  302跳转设置:

  server {

  listen 80;

  server_name downcc.com;

  rewrite ^/(.*) http://www.downcc.com/$1 redirect;

  access_log off;

  }

  在看下关于nginx 301 302跳转的详细说明文档

  server {

  server_name downcc.com;

  rewrite ^/(.*) http://www.downcc.com/$1 permanent;

  }

  last – 基本上都用这个Flag。

  break – 中止Rewirte,不在继续匹配

  redirect – 返回临时重定向的HTTP状态302

  permanent – 返回永久重定向的HTTP状态301

  Nginx的重定向用到了Nginx的HttpRewriteModule,下面简单解释以下如何使用的方法:

  rewrite命令

  nginx的rewrite相当于apache的rewriterule(大多数情况下可以把原有apache的rewrite规则加上引号就可以直接使用),它可以用在server,location 和IF条件判断块中,命令格式如下:

  rewrite 正则表达式 替换目标 flag标记

  flag标记可以用以下几种格式:

  last – 基本上都用这个Flag。

  break – 中止Rewirte,不在继续匹配

  redirect – 返回临时重定向的HTTP状态302

  permanent – 返回永久重定向的HTTP状态301

  特别注意:

  last和break用来实现URL重写,浏览器地址栏的URL地址不变,但是在服务器端访问的路径发生了变化;

  redirect和permanent用来实现URL跳转,浏览器地址栏会显示跳转后的URL地址;

  例如下面这段设定nginx将某个目录下面的文件重定向到另一个目录,$2对应第二个括号(.*)中对应的字符串:

  location /download/ {

  rewrite ^(/download/.*)/m/(.*)..*$ $1/nginx-rewrite/$2.gz break;

  }

  nginx重定向的IF条件判断

  在server和location两种情况下可以使用nginx的IF条件判断,条件可以为以下几种:

  正则表达式

  如:

  匹配判断

  ~ 为区分大小写匹配; !~为区分大小写不匹配

  ~* 为不区分大小写匹配;!~为不区分大小写不匹配

  例如下面设定nginx在用户使用ie的使用重定向到/nginx-ie目录下:

  if ($http_user_agent ~ MSIE) {

  rewrite ^(.*)$ /nginx-ie/$1 break;

  }

  文件和目录判断

  -f和!-f判断是否存在文件

  -d和!-d判断是否存在目录

  -e和!-e判断是否存在文件或目录

  -x和!-x判断文件是否可执行

  例如下面设定nginx在文件和目录不存在的时候重定向:

  if (!-e $request_filename) {

  proxy_pass http://127.0.0.1;

  }

  return

  返回http代码,例如设置nginx防盗链:

  location ~* .(gif|jpg|png|swf|flv)$ {

  valid_referers none blocked www.downcc.com www.test1.com;

  if ($invalid_referer) {

  return 404;

  }

  }

nginx 301 302重定向跳转配置 (一般都做301,对seo好)相关推荐

  1. scrapy 解决Redirecting 301 302重定向问题

    在使用Scrapy框架中URl被重定向,总是遇到这类问题: DEBUG: Redirecting (301/302) to <GET https://XXXX refer https://XXX ...

  2. Nginx 301 302重定向

    # 301 永久重定向到https server {server_name xxx.com;rewrite ^(.*)$ https://$host$1 permanent; } # 302 临时重定 ...

  3. Nginx网站常见的跳转配置实例

    相信大家在日常运维工作中如果你用到nginx作为前端反向代理服务器的话,你会对nginx的rewrite又爱又恨,爱它是因为你搞定了它,完成了开发人员的跳转需求后你会觉得很爽,觉得真的很强大,恨它是因 ...

  4. php如何实现302重定向,php 301 302重定向实现代码

    很多网站的站长们都喜欢把前台的顶级域名301重定向到带有www的二级域名上,或者带www的二级域名重定向到顶级域名上,以集中权重.而在网站的后端设计中,一些页面的提交跳转则需要使用到302重定项.关于 ...

  5. PHP的301,302自动跳转代码

    301重定向就是页面永久性移走的意思,搜索引擎知道这个页面是301重定向的话,就会把旧的地址替换成重定向之后的地址. 302重定向就是页面暂时性转移,搜索引擎处理302的话,不会将旧的地址替换成新的地 ...

  6. php如何制作301跳转,PHPWind论坛如何做301跳转

    做SEO的大家都知道,网址的首选域要统一非常重要.也就是比如网站绑定了两个域名,包括带www的和不带www的,那么要选择一个作为主要域名做推广,那么就需要将另外一个域名301跳转到主域名. 如果服务器 ...

  7. 【nginx】return 301 302 重定向URL

    前言 nginx version: nginx/1.18.0 CentOS Linux release 7.6.1810 (Core) 301 方法1:rewrite location /t1/res ...

  8. Nginx rewrite 301 永久重定向跳转

    (1)实现http://blog.klaus.org跳转到http://www.klaus.org/blog/klaus.html 跳转前,http://blog.klaus.org对应的站点配置(前 ...

  9. http302重定向 缓存_如何清除301/302重定向缓存

    http302重定向 缓存 我认为许多Web开发人员和服务器管理员都面临着301重定向缓存. 在学习课程之前,我经常面对它. 我希望它能对您有所帮助,您可以从我这里学到一些东西,而不是从自己的错误中学 ...

最新文章

  1. linux 判断某个命令是否安装
  2. Unicode编码完全探究(三)之联通乱码
  3. python的函数_Python 返回函数+匿名函数
  4. python怎么实现图像去噪_基于深度卷积神经网络和跳跃连接的图像去噪和超分辨...
  5. 我的世界python俄罗斯方块手机版下载_欢乐俄罗斯方块
  6. RocketMQ(一)——发展历程及基本概念
  7. 指定输出路径_新版Creo输入输出配置不用愁,果断收藏本文就对了
  8. 如何在Ubuntu 14.10 上安装WordPress?
  9. 支持64位的打印服务器,使用环境打印服务器是32位,添加共享的计算机是64位
  10. jQuery文档加载完毕的几种写法
  11. java 在某个时间段定时_Java 在某一个时间点定时执行任务(转载)
  12. java线程池——逐步分析
  13. Java-KoTime:接口耗时监测与邮件通知接口耗时情况
  14. 3000字告诉你如何渡过程序员菜鸟时期
  15. 【以太坊】ubuntu安装以太坊ethereum的测试网络ropsten-net以及雷电网络raiden-network环境
  16. 解决本地请求跨域问题,替换代理,Whistle + chrome扩展工具SwitchyOmega
  17. renren-generator:运行报错java: 找不到符号 符号: 类 Longblob
  18. 树莓派:双色LED灯实验
  19. Win7Codecs+设置程序中英文对照
  20. div布局系列 - 两端对齐的方法

热门文章

  1. 总结word2vec
  2. C语言程序设计第6章节练习题
  3. 用十年教会自己编程_什么学习编程实际上教会了我
  4. iOS开发:RGB专栏(RGB与16进制色互转)
  5. 大厂面试常考的前端算法面试题,建议尽早学会
  6. map与area--在实际项目中的运用
  7. Google Spanner论文翻译
  8. 提出反向传播算法、深度学习之父 Geoffrey Hinton 将要来演讲
  9. 各种ADSL猫初始地址及用户名密码
  10. echart实时量展示折线图