我正在使用 nginx,并且有一个重定向到特定 URL 的域,如下所示:
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
return 301 http://example.net/page/example;
}
效果很好,但现在我想添加额外的 URL 重定向。我还想example.com/coolstory
重定向到http://bro.example.net/dumb/bloated?=address
因此,总而言之,我想要:
example.com -> http://example.net/page/example
example.com/coolstory -> http://bro.example.net/dumb/bloated?=address
我尝试将其添加到上面的服务器指令中,但它被忽略了。
location /coolstory([0-9]+) {
return 301 bro.example.net/dumb/bloated?=address;
}
答案1
虽然花了点功夫,但我自己终于弄明白了。
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
location /index.html {
return 301 http://example.net/page/example;
}
location /coolstory {
return 301 http://bro.example.net/dumb/bloated?=address;
}
}
/index.html
我删除了服务器级 301 重定向,并使用来引用根域/
,而不是 ,但这不起作用。当然,index.html 实际上并不存在,因此感觉不太理想,但它确实有效,而且比 html 重定向更好。