222 votes

Comment rediriger vers un autre domaine en utilisant NGINX?

Comment puis-je rediriger mydomain.com et n'importe quel sous-domaine *.mydomain.com à www.adifferentdomain.com utilisant NGINX?

386voto

kolbyjack Points 4721

nom_serveur prend en charge les correspondances de suffixe à l'aide de la syntaxe .mydomain.com:

 server {
  server_name .mydomain.com;
  rewrite ^ http://www.adifferentdomain.com$request_uri? permanent;
}
 

35voto

Sergunik Points 51
 server {
    server_name .mydomain.com;
    return 301 http://www.adifferentdomain.com$request_uri;
}
 

http://wiki.nginx.org/HttpRewriteModule#return

et

http://wiki.nginx.org/Pitfalls#Taxing_Rewrites

21voto

Robin van Baalen Points 1177

Pourquoi utiliser le module de réécriture si vous pouvez faire return ? Techniquement parlant, return fait partie du module de réécriture, comme vous pouvez le lire ici, mais cet extrait est plus facile à lire à mon humble avis.

 server {
    server_name  .domain.com;

    return 302 $scheme://forwarded-domain.com;
}
 

Vous pouvez également lui donner une redirection 301.

13voto

udo Points 327

Cela devrait fonctionner via HTTPRewriteModule .

Exemple de réécriture de www.example.com à exemple.com:

 server {    
    server_name www.example.com;    
    rewrite ^ http://example.com$request_uri? permanent; 
}
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X