下面的配置重定向到.another-domain.com
空子域名。我做错了什么?
server {
server_name ~^(\w+)\.domain\.com$;
location / {
rewrite ^ $scheme://$1.another-domain.com$request_uri permanent;
}
}
答案1
NGINX 文档提到对于该server_name
指令:
数字参考很容易被覆盖
因此您应该使用命名捕获。
此外,由于您正在执行站点范围的重定向而不需要复杂的 URL 替换,因此您可以return
在上下文中直接使用server
:
server {
server_name ~^?(?<subdomain>\w+)\.domain\.com$;
return 301 $scheme://$subdomain.another-domain.com$request_uri;
}
此外,根据上面的评论,请确保这不是 NGINX 配置中的默认服务器。您只需在 other的指令default_server
中提供标志即可做到这一点。server
listen