希望对此重定向过程有所了解
我希望重定向所有与以下内容匹配的网址:
https://www.something.com/about-us/foo/(单页) 和 https://www.something.com/foo/some-arbitrary-segment/(许多具有此结构的网页)
这些是包含“foo”的站点地图中唯一的网址,因此我尝试简单地匹配。
我首先需要检查另一个条件变量(我正在检查移动设备的用户代理) - 除了包含“foo”的那些页面之外的所有页面都应重定向到新域。
[StartDate]
答案 0 :(得分:0)
location /
块通常是与先前未与另一个location
块匹配的URI匹配的漏洞。并使用0
和1
来表示更清晰的配置文件的真/假。
Rembember 301是永久重定向,302是临时的
set $mobile_redirect 0;
if ($http_user_agent ~ "netscape navigator") {
set $mobile_redirect 1;
}
# Specific URIs /about-us/foo/ and /foo/*
location ~ ^/(about-us/foo/$|foo/) {
# Do nothing
}
# Every other URI
location / {
if ($mobile_redirect) {
return 301 https://website.com$request_uri;
}
}