Используя nginx, я хочу перенаправить все поддомены от example.com
до www.example.com
.nginx переписать все поддомены подстановок на www.site.com
Я видел перенаправления здесь, чтобы перенаправить не-www на www или наоборот, но я также хочу, чтобы www2.site.com blabla.site.com
был перенаправлен. У меня есть wildcard dns для домена.
Для апача это можно легко сделать с следующее:
RewriteCond %{HTTP_HOST} !www.example.com [NC]
RewriteRule (.*) http://www.example.com%{REQUEST_URI} [R=301,L]
Ниже, кажется, работает, но не рекомендуется в соответствии с ifisevil page.
if ($http_host !~ "www.site.com"){
rewrite ^(.*)$ http://www.example.com$request_uri redirect;
}
Пожалуйста, не используйте 'переписывающие^permanent' вместо простого' return'. Выполнение регулярного выражения (пусть даже простого простого '^') является просто потерей CPU в этом случае. – VBart
Хорошая точка, изменилось, что – cobaco
попробовал это, он не работает, не отправляет 301 заголовок, не перенаправляет его на сайт www.site.com, фактически перенаправляет его на другой сайт на сервере, но выдает subdomain.site.com в adessbar – user2143308