Sto cercando di impostare l’inoltro su Amazon Route53. Il mio ultimo servizio DNS (Nettica) mi ha permesso di indirizzare le richieste a “aws.example.com” a “https://myaccount.signin.aws.amazon.com/console/”.
Questa funzionalità è supportata da Route53?
Come fa Nettica a raggiungere questo objective? Inserisce uno speciale record A, CNAME, PTR o TXT?
Stavo correndo nello stesso identico problema descritto da Saurav, ma avevo davvero bisogno di trovare una soluzione che non richiedesse altro che Route 53 e S3. Ho creato una guida pratica per il mio blog in cui descrivono cosa ho fatto.
Ecco cosa mi è venuto in mente.
Utilizzando solo gli strumenti disponibili in Amazon S3 e Amazon Route 53, crea un URL Redirect che inoltra automaticamente http://url-redirect-example.vivekmchawla.com alla pagina di accesso della Console AWS con alias su “MyAccount”, situato a https : //myaccount.signin.aws.amazon.com/console/ .
Questa guida ti insegnerà a configurare l’inoltro di URL a qualsiasi URL, non solo quelli di Amazon. Imparerai come configurare l’inoltro a cartelle specifiche (come “/ console” nel mio esempio) e come cambiare il protocollo del reindirizzamento da HTTP a HTTPS (o viceversa).
Aprire la console di gestione S3 e fare clic su “Crea bucket”.
Scegli un nome Bucket. Questo passaggio è davvero importante! È necessario nominare esattamente il secchio come l’URL che si desidera impostare per l’inoltro. Per questa guida, userò il nome “url-redirect-example.vivekmchawla.com”.
Seleziona la regione che funziona meglio per te. Se non lo sai, mantieni il valore predefinito.
Non preoccuparti di configurare la registrazione. Basta fare clic sul pulsante “Crea” quando sei pronto.
Incolla il seguente snippet XML nella sua interezza.
https myaccount.signin.aws.amazon.com console/ 301
Se sei curioso di sapere cosa sta facendo l’XML sopra, consulta la documentazione di AWM per “Sintassi per specificare le regole di routing” . Una tecnica bonus (non trattata qui) viene inoltrata a pagine specifiche nell’host di destinazione, ad esempio http://redirect-destination.com/console/special-page.html
. Leggi l’elemento
se hai bisogno di questa funzionalità.
Prendi nota dell’hosting di siti web statico “endpoint” che Amazon ha creato automaticamente per questo bucket. Ne avrai bisogno per dopo, quindi evidenzia l’intero URL, quindi copialo e incollalo nel blocco note.
ATTENZIONE! A questo punto puoi effettivamente fare clic su questo link per verificare se le tue regole di reindirizzamento sono state inserite correttamente, ma attenzione! Ecco perché…
Diciamo che hai inserito il valore sbagliato all’interno dei tag
nelle tue Regole di reindirizzamento. Forse hai accidentalmente digitato myaccount.amazon.com
, invece di myaccount.signin.aws.amazon.com
. Se fai clic sul link per testare l’URL dell’endpoint, AWS reindirizzerà felicemente il tuo browser all’indirizzo sbagliato!
Dopo aver notato il tuo errore, probabilmente modifichi il
nelle tue Regole di reindirizzamento per correggere l’errore. Sfortunatamente, quando tenti di fare nuovamente clic sul link, molto probabilmente finirai per essere reindirizzato all’indirizzo sbagliato! Anche se hai corretto la voce
, il tuo browser memorizza nella cache la voce precedente (errata!). Ciò accade perché stiamo utilizzando un reindirizzamento HTTP permanente (permanente), che browser come Chrome e Firefox memorizzeranno nella cache per impostazione predefinita.
Se copi e incolli l’URL Endpoint su un altro browser (o svuota la cache in quello corrente), avrai un’altra possibilità di vedere se la tua voce
aggiornata è finalmente quella corretta.
Per sicurezza, se vuoi testare il tuo URL degli endpoint e le regole di reindirizzamento, devi aprire una sessione di navigazione privata, come “Modalità di navigazione in incognito” in Chrome. Copia, incolla e verifica l’URL dell’endpoint in modalità di navigazione in incognito e tutto ciò che viene memorizzato nella cache andrà via una volta chiusa la sessione.
Facendo clic su “Crea set di record” si aprirà la finestra Crea set di record sul lato destro della console di gestione Route53.
Nel campo Nome, inserisci la parte dell’hostname dell’URL che hai usato quando hai nominato il tuo bucket S3. La “porzione hostname” dell’URL è tutto a SINISTRA del nome della tua zona ospitata. Ho chiamato il mio bucket S3 “url-redirect-example.vivekmchawla.com”, e la mia Hosted Zone è “vivekmchawla.com”, quindi la parte hostname che devo inserire è “url-redirect-example”.
Seleziona “CNAME – Nome canonico” per il tipo di questo set di record.
Per il valore, incolla l’URL dell’endpoint del bucket S3 che abbiamo creato nel passaggio 3.
Fai clic sul pulsante “Crea set di record”. Supponendo che non ci siano errori, ora sarai in grado di vedere un nuovo record CNAME nell’elenco di Record Set della tua Zona Ospitata.
Apri una nuova scheda del browser e digita l’URL che abbiamo appena configurato. Per me, questo è http://url-redirect-example.vivekmchawla.com . Se tutto ha funzionato correttamente, dovresti essere inviato direttamente a una pagina di accesso AWS.
Poiché abbiamo utilizzato l’alias myaccount.signin.aws.amazon.com
come URL di destinazione del nostro reindirizzamento, Amazon sa esattamente a quale account stiamo cercando di accedere e ci porta direttamente lì. Questo può essere molto utile se si desidera fornire un collegamento di accesso AWS breve, pulito e brand ai dipendenti o agli appaltatori.
Personalmente adoro i vari servizi AWS, ma se hai deciso di migrare la gestione DNS su Amazon Route 53, la mancanza di un semplice inoltro URL può essere frustrante. Spero che questa guida abbia contribuito a configurare un po ‘più facilmente l’inoltro dell’URL per le zone ospitate.
Se vuoi saperne di più, dai un’occhiata alle pagine seguenti dal sito di documentazione di AWS.
Saluti!
Il supporto di AWS ha indicato una soluzione più semplice. È fondamentalmente la stessa idea proposta da @Vivek M. Chawla, con un’implementazione più semplice.
AWS S3:
aws.example.com
Redirect all requests to another host name
e inserisci il tuo URL: https://myaccount.signin.aws.amazon.com/console/
AWS Route53:
Yes
. Fare clic sul campo Alias Target
e selezionare il bucket S3 creato nel passaggio precedente. Riferimento: come redirect i domini tramite Amazon Web Services
Documentazione ufficiale di AWS: esiste un modo per redirect un dominio a un altro dominio utilizzando Amazon Route 53?
Sono stato in grado di usare nginx per gestire il reindirizzamento 301 alla pagina di accesso di aws.
Vai alla tua cartella conf nginx (nel mio caso è /etc/nginx/sites-available
in cui creo un link simbolico a /etc/nginx/sites-enabled
per i file conf abilitati).
Quindi aggiungere un percorso di reindirizzamento
server { listen 80; server_name aws.example.com; return 301 https://myaccount.signin.aws.amazon.com/console; }
Se si utilizza nginx, molto probabilmente si avranno blocchi di server aggiuntivi (virtualhosts nella terminologia di apache) per gestire l’apex di zona (esempio.com) o comunque l’installazione è stata eseguita. Assicurati di averne uno impostato come server predefinito.
server { listen 80 default_server; server_name example.com; # rest of config ... }
In Route 53, aggiungi un A record
per aws.example.com
e imposta il valore sullo stesso IP utilizzato per l’apice di zona.
Mentre la mia risposta originale qui sotto è ancora valida e potrebbe essere utile capire la causa per l’inoltro di URL basato su DNS non disponibile tramite Amazon Route 53 , consiglio vivamente di verificare la soluzione indiretta assolutamente intelligente di Vivek M. Chawla attraverso il frattempo introdotto Supporto di Amazon S3 per il reindirizzamento del sito Web e il raggiungimento di un server autonomo di meno e quindi una soluzione gratuita all’interno di AWS solo in questo modo.
Nettica deve eseguire una soluzione di reindirizzamento personalizzata per questo, ecco il problema:
Potresti creare un alias CNAME come aws.example.com
per myaccount.signin.aws.amazon.com
, tuttavia in questo esempio DNS non fornisce alcun supporto ufficiale per l’aliasing di una sottodirectory come console
.
https://myaccount.signin.aws.amazon.com/
(l’ho appena provato), perché risolverebbe il problema immediatamente e farebbe un sacco di senso in primo luogo; inoltre, dovrebbe essere abbastanza facile da configurare sulla loro fine. Per questo motivo alcuni provider DNS hanno apparentemente implementato una soluzione personalizzata per consentire reindirizzamenti a sottodirectory; Mi permetto di indovinare che stanno sostanzialmente facilitando un alias CNAME per un proprio dominio e stanno reindirizzando di nuovo da lì alla destinazione finale tramite un reindirizzamento HTTP 3xx immediato.
Quindi, per ottenere lo stesso risultato, è necessario disporre di un servizio HTTP in esecuzione eseguendo questi reindirizzamenti, che non è la soluzione semplice che si spera, naturalmente. Forse / Si spera che qualcuno riesca comunque a trovare un approccio più intelligente.
Se hai ancora problemi con l’approccio semplice, creando un bucket vuoto, Redirect all requests to another host name
in Static web hosting in proprietà tramite la console. Assicurarsi di aver impostato 2 record A in route53, uno per final-destination.com
e uno per redirect-to.final-destination.com
. Le impostazioni per ognuna di queste saranno identiche, ma il nome sarà diverso in modo che corrisponda ai nomi che hai impostato per i tuoi bucket / URL.