Solution 1 :
Mieux vaut utiliser return
au lieu de rewrite
, car c'est plus rapide
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
server {
listen 80;
server_name www.example.com;
[...]
}
De cette façon, nous envoyons également au client un code de statut approprié, afin qu'il demande le bon domaine lors de la prochaine requête.
Solution 2 :
Vous le faites à la dure. Voici le moyen le plus simple.
server {
listen 80;
server_name example.com;
rewrite ^(.*) http://www.example.com$1 permanent;
}
server {
listen 80;
server_name www.example.com;
#The rest of your configuration goes here#
}