Question

Comment puis-je rediriger mydomain.com Et tout sous-domaine *.mydomain.com à www.adifferentdomain.com en utilisant nginx?

Était-ce utile?

La solution

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

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

ou sur n'importe quelle version 0.9.1 ou plus:

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

Autres conseils

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

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 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.

Cela devrait fonctionner via HttprewRiteModule.

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

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

Si vous souhaitez rediriger les demandes de "domain1.com" vers "domain2.com", vous pouvez créer un bloc de serveur qui ressemble à ceci:

server {
    listen 80;
    server_name domain1.com;
    return 301 $scheme://domain2.com$request_uri;
}

Redirection temporaire

rewrite ^ http://www.RedirectToThisDomain.com$request_uri? redirect;

Redirection permanente

rewrite ^ http://www.RedirectToThisDomain.com$request_uri? permanent;

Dans le fichier de configuration nginx pour le site spécifique:

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

}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top