Sembra che tu abbia già fatto la maggior parte del lavoro. Per chiarezza, ripeterò questi passaggi solo per assicurarmi che sia impostato correttamente:
Crea un bucket s3 utilizzando il nome del tuo dominio come nome del bucket (il nome del bucket deve essere www.example.com se desideri che il tuo sito sia example.com o www.example.com)
Carica i tuoi contenuti nel bucket s3. Scegli un nome coerente per i file di indice del tuo sito web (index.html di solito). Puoi anche caricare una pagina personalizzata per gli errori 404 Not Found. Chiama questo 404.html. Concedi autorizzazioni di lettura a ogni file nel tuo sito Web in modo che il pubblico possa visualizzarlo. Non concedere autorizzazioni aggiuntive al bucket, ma solo ai file all'interno.
Configura il tuo bucket come un sito web. Con la console AWS ( https://console.aws.amazon.com/s3/ ) puoi selezionare il tuo bucket, fare clic su proprietà, quindi selezionare la scheda "Sito web". Fare clic su abilitato e impostare il documento di indice su "index.html" e il documento di errore su "404.html". Dovrai anche impostare il tuo bucket con le autorizzazioni di accesso per consentire l'accesso tramite il web ( http://docs.amazonwebservices.com/AmazonS3/latest/dev/WebsiteAccessPermissionsReqd.html )
Prendi nota dell'URL "Endpoint" nella scheda di configurazione del sito web. Qui è dove vive il tuo sito web. Puoi aprire il link in una nuova finestra e dovresti vedere il tuo sito web proprio come apparirà. Fai clic e assicurati che tutto funzioni come previsto.
È NECESSARIO utilizzare l'indirizzo dell'endpoint in tutti i passaggi seguenti. Il normale www.example.com.s3.amazonaws.com non funzionerà: devi utilizzare la versione regionale ( http://www.example.com.s3-website-us-east-1.amazonaws.com/ )
Ora possiamo configurare il DNS per darti un URL pulito e personalizzato.
Innanzitutto, mapperemo www.example.com al tuo sito.
Utilizzando gli strumenti del tuo provider DNS, (123-reg nel tuo caso) devi creare un record CNAME per mappare www.example.com a www.example.com.s3-website-us-east-1.amazonaws.com
Il CNAME è l'unica cosa di cui hai bisogno se vuoi solo www.example.com. La maggior parte delle persone desidera che "example.com" funzioni quindi è necessario un altro passaggio.
example.com è spesso indicato come un dominio vuoto o il record dell'apice del dominio. Il motivo per cui è un problema è che non può essere un CNAME. I CNAME funzionano solo su sottodomini come "www." Ciò rende più difficile indicare s3.
L'approccio usuale consiste nell'utilizzare un servizio per reindirizzare automaticamente qualsiasi richiesta che va a example.com in modo che punti a www.example.com. Questo raccoglierà quindi il tuo record CNAME e il tuo sito verrà servito da s3.
Il reindirizzamento automatico non è possibile con il semplice vecchio DNS, quindi devi utilizzare un altro servizio. Alcuni provider DNS offrono questo servizio insieme al loro DNS (godaddy lo fa, amazon route53 no. Non sono sicuro di 123-reg)
Se il tuo provider DNS non lo fa, ci sono alcuni servizi gratuiti. Uno che ho usato è http://wwwizer.com/naked-domain-redirect - non richiede alcuna registrazione o pagamento.
Per utilizzare questo tipo di servizio, devi creare un record DNS "A" per il tuo dominio vuoto. Per il servizio wwwizer.com, è necessario creare un record A per puntare example.com a 174.129.25.170. È tutto!
Quindi, con questa configurazione, se un utente digita example.com nel proprio browser, accadrebbe quanto segue:
- Query DNS: example.com -> 174.129.25.170 (servizio di wwwizer.com)
- Richiesta HTTP a 174.129.25.170 per example.com
- 174.129.25.170 reindirizza example.com -> www.example.com
- Query DNS: www.example.com -> CNAME a www.example.com.s3-website-us-east-1.amazonaws.com
- Query DNS: www.example.com.s3-website-us-east-1.amazonaws.com -> punta ad Amazon S3
- La richiesta HTTP per www.example.com è ora servita da Amazon S3
Godere!