Ich sehe die Nginx HttpRewriteModule documentation ein Beispiel hat eine www-Präfix Domain zu einer nicht-www-Präfix Domäne neu zu schreiben:Nginx Rewrite nicht-www-Präfix-Domain www-Präfix Domain
if ($host ~* www\.(.*)) {
set $host_without_www $1;
rewrite ^(.*)$ http://$host_without_www$1 permanent; # $1 contains '/foo', not 'www.mydomain.com/foo'
}
Wie kann ich Machen Sie das Umgekehrte - schreiben Sie eine nicht-www-Präfix-Domain in eine www-Präfix-Domain um? Ich dachte, ich könnte vielleicht etwas wie das Folgende machen, aber Nginx mag die verschachtelte if-Anweisung nicht.
if ($host !~* ^www\.) { # check if host doesn't start with www.
if ($host ~* ([a-z0-9]+\.[a-z0-9]+)) { # check host is of the form xxx.xxx (i.e. no subdomain)
set $host_with_www www.$1;
rewrite ^(.*)$ http://$host_with_www$1 permanent;
}
}
Auch wollte ich dies, ohne explizit für jeden Domain-Namen arbeiten Nginx zu sagen domain1.com neu zu schreiben -> www.domain1.com, domain2.com -> www.domain2.com usw., da ich eine große Anzahl von Domains neu schreiben.
wie verwende ich das ohne wenn? – pahnin