存在的记忆

Nginx - Rewrite 实现 301 跳转 302 跳转


Rewrite 实现 nginx 301 跳转 302 跳转

nginx 的 rewrite 格式是:rewrite regex replacement flag

其中 flag 标记有四种格式:
last – 相当于 Apache 中的 L
break – 中止 Rewirte,不在继续匹配
redirect – 返回临时重定向的 HTTP 状态 302,相当于 Apache 中的 R
permanent – 返回永久重定向的 HTTP 状态 301,相当于 Apache 中的 R=301
可以放在 server, location 和 if 模块中。

域名跳转

实例 1 https 跳转

server_name  www.attacker.club;
rewrite ^(.*)$  https://$server_name$1 permanent;
访问服务器请求全跳转到“server_name”定义的域名

实例 2 主机名跳转

server_name  attacker.club www.attacker.club;
if ($host != 'www.attacker.club' ) {
        rewrite    ^/(.*)$    http://www.attacker.club/$1    permanent;
}


if ($host = 'attacker.club' ) {
        rewrite    ^/(.*)$    http://attacker.club/$1    permanent;
}

当前页面是本站的「Baidu MIP」版。查看和发表评论请点击:完整版 »