Ich hatte eine sehr lange Domain und beschloss, sie in eine kürzere und freundlichere zu ändern. Da ich jedoch viele Subdomains habe (tatsächlich habe ich einen Subdomain-Platzhalter), wollte ich die Subdomain beibehalten und nur den Domain-Teil ändern. Also habe ich folgende Regel aufgestellt:
server {
listen 80;
server_name ~^(\w+)\.olddomain\.com$;
rewrite ^ $scheme://$1.doma.in$request_uri? permanent;
}
Ich habe viele andere Fragen gelesen, bei denen dieses Snippet das Problem gelöst hat. Bei mir leitet Nginx jedoch immer .domain.in
ohne Subdomains weiter. Was vermisse ich? Ich habe den regulären Ausdruck gegen den regulären Ausdruck 101 getestet und die Beispiele funktionieren einwandfrei. Nginx scheint nicht in der Lage zu sein, ihn umzuleiten.
quelle
test-sub.doma.in
zu.domai.in
!~
die Regex am Anfang? Es macht nicht, da etwas vorher^
in Regex erscheinen würde .