Reindirizzare le richieste non www a www su Amazon Route 53


44

Voglio reindirizzare tutte le richieste da example.coma www.example.com.

Preferibilmente, ciò dovrebbe accadere a livello di DNS. Ho provato a usare i record PTR, ma questo fallisce semplicemente, restituendo un 404.

wwww.example.com è un ALIAS per un bilanciamento del carico elastico.

Qual è il modo più semplice per raggiungere questo obiettivo?


Cosa hai provato con i record PTR? Sono curioso.
TRiG

@flavian il poster ha chiesto una riscrittura DNS, non una riscrittura dell'URL, e in particolare ha detto che non gli importava dell'aspetto dell'URL.
pauska,

4
@flavian per amor, hai detto che vuoi fare il reindirizzamento in DNS. La mia risposta spiega come farlo in DNS. Se si desidera reindirizzare l'URL, è necessario riscrivere l'URL. Non ha nulla a che fare con il DNS.
pauska,

C'è qualche motivo particolare per farlo? Lo farei al contrario .
nyuszika7h,

SAN in EV SSL.
flavian,

Risposte:


50

Se stai già utilizzando Route 53, puoi utilizzare il loro alias proprietario "record" per risolvere questo problema. Con DNS standard, non è possibile farlo affatto e è necessario che un sito Web invii un reindirizzamento 301. Ovviamente, devi ancora inviare i reindirizzamenti 301 o gestire il fatto che alcune richieste arriveranno senza il www (anche se dovresti inviare 301 per motivi SEO).

Probabilmente il modo più semplice per farlo è impostare un bucket S3 con il nome del dominio nudo e configurare le proprietà del bucket per reindirizzare da example.com a www.example.com, quindi in Route 53 creare un alias per nudo nome di dominio che punta a quel bucket S3.

Dai commenti

Per migliorare la risposta, ecco cosa abbiamo fatto per farlo funzionare:

  • Imposta bucket: non importa quale sia il suo nome e deve consentire al pubblico.
  • Nel bucket, fai clic su Proprietà e fai clic su Hosting di siti Web statici. Fai clic su reindirizza tutte le richieste a un altro nome host e inserisci il sito a cui desideri indirizzare il traffico.
  • Copia l'endpoint del nome del bucket e vai nella zona ospitata nella console di Route53 e aggiungi un CNAME con Alias ​​No all'URL da cui devi reindirizzare e incolla l'endpoint del bucket come valore.

@ michael-hampton mi corregga se sbaglio ma il bucket S3 reindirizza solo per il nome di dominio nudo senza percorso, giusto? Ho aggiunto correttamente un bucket S3 per il mio dominio, ma reindirizza solo il dominio nudo e non reindirizza tutto ciò che ha un percorso. Sto indovinando la riscrittura mod è la strada da percorrere?
John Harding,

@JohnHarding Non lo so. Non utilizzo più la maggior parte dei servizi Amazon AWS, incluso S3.
Michael Hampton

2
Per migliorare la risposta, ecco cosa abbiamo fatto per farlo funzionare: - Imposta bucket - non importa quale sia il suo nome e deve consentire al pubblico. - In bucket, fai clic su Proprietà e fai clic su Hosting di siti Web statici. Fai clic su reindirizza tutte le richieste a un altro nome host e inserisci il sito a cui desideri indirizzare il traffico. - Copia l'endpoint del nome del bucket e vai nella zona ospitata nella console di Route53 e aggiungi un CNAME con Alias ​​No all'URL da cui devi reindirizzare e incolla l'endpoint del bucket come valore.
NathanQ,

4
Funziona solo per le richieste http, poiché S3 non supporta https. Le richieste https://example.comfalliranno.
Harry King

per effettuare il https://example.comreindirizzamento a https://www.example.comte è purtroppo necessario impostare un altro cloudfront che punta su un bucket con reindirizzamento http statico su www.example.com. Vale la pena ricordare che è necessario aggiungere il dominio apex nel CNAMEcampo nella configurazione
cloudfront

6

Per un alias DNS è sufficiente aggiungere un record CNAME o A in DNS. Vedi la mia risposta qui: Come reindirizzare www a non www in Route53?

Per la riscrittura degli URL (come nel reindirizzamento dei client a un altro indirizzo), è necessaria una qualche forma di logica di riscrittura degli URL eseguita sul server web. Esistono diversi modi per farlo e dipende dal tipo di server web che usi. Il più popolare sta usando mod_rewrite con apache. Questo sito è pieno di domande su mod_rewrite, alcune ricerche dovrebbero ottenere ciò che desideri.


Ho usato CNAME sul mio bind9 srv interno esattamente un'ora fa, ma i risultati non sono gli stessi di url rewrite. Quando inserisci questo CNAME nella barra degli indirizzi del browser, ottieni esattamente quell'URL, non cambia l'URL a cui punta CNAME. Sto usando apache mod_rewrite ora, inviando 301 quando non c'è www. prefisso.
Kitet,

3
La risposta a cui ci si collega è per l'invio www.domain.coma domain.com. Questa domanda riguarda il contrario. La tua soluzione di utilizzo CNAMEo Aregistrazione funziona per l'invio domain.coma www.domain.com?
Carl G,

4

Puoi farlo usando l'aiuto di un bucket s3. I passaggi sono incollati di seguito:

Passaggio 1. Creare un bucket S3.

Passaggio 2. Crea il bucket come sito Web statico che ospita il reindirizzamento.

Passaggio 3. Modifica della voce AWS Route 53 per dominio non www.

A - Indirizzo IPv4 -> Alias ​​Sì -> Alias ​​Target (selezionare il punto finale del bucket s3 dal menu a discesa).

Passaggio 4. Salvare il set di record.


0

AWS Route53 non fornisce attualmente supporto per reindirizzare ciò che è attualmente noto come record APEX (il dominio principale) su un altro nome di dominio, sebbene funzionino in una soluzione.

Ho raggiunto questo risultato creando un record A (alias) che punta il mio dominio principale (devopsfolks.com) all'indirizzo IP della mia soluzione ospitata da WP ... E la risposta è sì, se l'IP cambia allora avrai bisogno per cambiare l'alias. Tuttavia, il provider mi ha garantito che l'IP è fisso a meno che non debbano eseguire una sorta di ripristino di emergenza e modificare l'hardware, nel qual caso metteranno insieme un proxy per eseguire i reindirizzamenti dando ai clienti 45 giorni per modificare la loro mappatura.


5
A non significa alias, ma indirizzo. E puoi facilmente effettuare un reindirizzamento con Route 53 utilizzando il metodo bucket S3 mostrato sopra.
Michael Hampton

"Stanno lavorando su una soluzione" c'è stato qualche aggiornamento su questo?
Tom,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.