Como eu tinha um domínio muito longo, decidi alterá-lo para um mais curto e mais amigável. Mas como tenho muitos subdomínios (na verdade, tenho um curinga de subdomínio), eu queria manter o subdomínio enquanto alterava apenas a parte do domínio. Então, eu fiz a seguinte regra:
server {
listen 80;
server_name ~^(\w+)\.olddomain\.com$;
rewrite ^ $scheme://$1.doma.in$request_uri? permanent;
}
Eu li muitas outras perguntas em que esse trecho resolveu o problema. Mas comigo, o Nginx sempre redireciona para .domain.in
, sem subdomínios. o que estou perdendo? Testei o regex contra o regex101 e os exemplos funcionam bem, o Nginx parece incapaz de redirecioná-lo.
fonte
test-sub.doma.in
para.domai.in
!~
a regex faz no começo? Não faz desde que algo apareça antes^
em regex.