NGINXを使用してmydomain.com
およびサブドメイン*.mydomain.com
をwww.adifferentdomain.com
にリダイレクトするにはどうすればよいですか?
server_name は、.mydomain.com構文を使用したサフィックスの一致をサポートします。
server {
server_name .mydomain.com;
rewrite ^ http://www.adifferentdomain.com$request_uri? permanent;
}
またはバージョン0.9.1以降で:
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
http://wiki.nginx.org/HttpRewriteModule#return
そして
return
を実行できるのに、なぜ書き換えモジュールを使用するのですか?技術的に言えば、return
は ここで読むことができます のように書き換えモジュールの一部ですが、このスニペットは読みやすくなっています。
server {
server_name .domain.com;
return 302 $scheme://forwarded-domain.com;
}
301リダイレクトを指定することもできます。
HTTPRewriteModule で動作するはずです。
Www.example.comからexample.comへの書き換え例:
server {
server_name www.example.com;
rewrite ^ http://example.com$request_uri? permanent;
}
「domain1.com」に対するリクエストを「domain2.com」にリダイレクトする場合、次のようなサーバーブロックを作成できます。
server {
listen 80;
server_name domain1.com;
return 301 $scheme://domain2.com$request_uri;
}
一時的なリダイレクト
rewrite ^ http://www.RedirectToThisDomain.com$request_uri? redirect;
永続的なリダイレクト
rewrite ^ http://www.RedirectToThisDomain.com$request_uri? permanent;
特定のサイトのnginx設定ファイル:
server {
server_name www.example.com;
rewrite ^ http://www.RedictToThisDomain.com$request_uri? redirect;
}