比如访问 http://a.com/about/
返回是 404,要重定向到这里来,也就是 http://intxt.net/about/
, 要在a.com 所在的服务器上给 nginx 做如下配置
location / {
error_page 404 = @fallback;
}
location @fallback {
return 301 http://intxt.net$request_uri;
}
或者用一条更简洁的语句
error_page 404 =301 http://intxt.net$request_uri;
如果只是重定向到首页,不保留 URI,就把上面两张配置方法里的 $request_uri
去掉。
经常是有人把当前网站的 404 重定向至首页。配置 error_page 404 =301 $scheme://$host;
即可, $scheme
是协议(http 或者 https),$host
是主机名, HTTP 请求头部的 HOST 字段。
上面描述的配置里的 301
或者 =301
可以去掉,去掉的话,同样的请求得到的结果就是 302 重定向。