J'héberge mon site à domain.com
.
Mes entrées DNS dans Route53 sont les suivantes:
domain.com A xxx.xxx.xxx.xxx 300
domain.com NS stuff.awsdns-47.org 172800
domain.com SOA stuff.awsdns-47.org 900
Je souhaite rediriger le trafic depuis www.domain.com
à domain.com
, car actuellement cela renvoie juste un 404. Cette question sur SO a suggéré un enregistrement PTR
, et j'ai ajouté que:
www.domain.com PTR domain.com 300
mais ça n'a pas marché. Que dois-je faire?
Le PTR sert à configurer des recherches IP inversées, et ce n'est pas quelque chose dont vous devriez vous soucier. Retirez-le.
Ce dont vous avez besoin est un CNAME pour www:
www.domain.com CNAME domain.com 300
Vous pouvez également définir un ALIAS pour WWW sur un enregistrement de domain.com:
www.domain.com A ALIAS domain.com 300
de sorte que vos entrées DNS finales seraient les suivantes:
domain.com A xxx.xxx.xxx.xxx 300
domain.com NS stuff.awsdns-47.org 172800
domain.com SOA stuff.awsdns-47.org 900
www.domain.com A ALIAS domain.com (Hosted Zone ID)
Une fois que vous avez un CNAME pour example.com et www.example.com, cette configuration nginx redirigera le trafic de http vers https ainsi que tout www.example.com vers example.com.
server {
listen 80 ;
server_name example.com, www.example.com;
rewrite ^/(.*) https://example.com/$1 permanent;
}
server { # redirect www to normal domain
listen 443 ssl ;
server_name www.example.com;
include /etc/nginx/myprojname/include/ssl;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl ;
include /etc/nginx/myprojname/include/ssl;
server_name example.com;
include /etc/nginx/snippets/nginx_common_location_443;
location / {
proxy_pass http://127.0.0.1:3000/;
}
include /etc/nginx/myprojname/include/custom_server_include;
}
où mon serveur réel est en place et écoute sur le port 3000 ... cela met également fin à mon TLS mais supprimez simplement la mention de ssl ... caché dans ces fichiers inclus sont mes paramètres nginx pour durcir la boîte
Comme mentionné ci-dessus, ce n'est pas possible avec le DNS standard.
Voici la solution que j'ai utilisée: