nginx 301 302 重定向

nginx 301 302跳转的详细说明

server {

  listen 80;

  server_name abc.com;

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

  access_log off;

  }

       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地址;

301跳转实例

server {

  listen 80;

  server_name abc.com;

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

  access_log off;

  }

302跳转实例

server {

  listen 80;

  server_name abc.com;

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

  access_log off;

  }


你可能感兴趣的:(nginx,实例,302,301,重定向说明)