Estoy tratando de configurar un sitio web simple basado en Amazon AWS S3, como se explica aquí .
He configurado el bucket S3 (simples3websitetest.com), le di los permisos correctos (con suerte):
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AddPerm",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::simples3websitetest.com/*"
]
}
]
}
Subí index.html, configuré el acceso al sitio web y se puede acceder a través de http://simples3websitetest.com.s3-website-us-west-2.amazonaws.com/index.html
Hasta ahora todo bien, ahora quiero configurar el acceso a Amazon Route53 y aquí es donde me quedé atascado.
Configuré una zona alojada en un dominio que poseo (resourcesbox.net), hice clic en "crear conjunto de registros" y llegué al paso "configurar alias", pero obtengo "No hay objetivos disponibles" en los puntos finales del sitio web S3 cuando intenta establecer el objetivo de alias.
¿¿Qué me perdí??
fuente
Respuestas:
El alias de registro A que cree debe ser el mismo que el nombre del depósito, ya que el alojamiento virtual de depósitos en S3 requiere que el
Host:
encabezado enviado por el navegador coincida con el nombre del depósito. Realmente no hay otra forma práctica en la que se pueda lograr el alojamiento virtual de cubos ... el cubo debe ser identificado por algún mecanismo, y ese mecanismo son los encabezados http.Para crear un alias a un depósito dentro del dominio "ejemplo.com", el nombre del depósito también tendrá que ser un nombre de host que pueda declarar legalmente dentro de ese dominio ... el ejemplo de prueba de la Ruta 53 A-Record "testbucket.example .com, "por ejemplo, solo puede ser alias a un depósito llamado" testbucket.example.com "... y ningún otro depósito.
En su pregunta, está rompiendo esta restricción ... pero solo puede crear un alias para un depósito llamado "simples3websitetest.com" dentro (y en la cúspide) del dominio "simples3websitetest.com".
Esto es por diseño, y no es exactamente una limitación de la Ruta 53 ni de S3. Solo te impiden hacer algo que no puede funcionar. Los servidores web no tienen conocimiento de ningún alias o CNAME o cualquier otra cosa que se haga en el DNS: solo reciben el nombre de host original al que el navegador cree que está intentando conectarse, en los encabezados http enviados por el navegador ... y S3 usa esto información para identificar el nombre del depósito al que se aplica la solicitud alojada virtual.
Sin embargo, tenga en cuenta que esta restricción solo se aplica cuando no está utilizando CloudFront frente a su bucket.
Con CloudFront, hay más flexibilidad, porque el
Host:
encabezado se puede reescribir (por el propio CloudFront) antes de que la solicitud pase a S3. Configura el "host de origen" en su distribución de CloudFront comoyour-bucket.s3-website-xx-yyyy-n.amazonaws.com
donde xx-aaaa-n es la región de AWS de S3 donde se creó su depósito. Este punto final se muestra en la consola S3 para cada depósito.fuente
alias
registros de la Ruta 53 que apuntan a cubos S3 con el alojamiento del sitio web habilitado, lo que hace que el DNS se resuelva en el punto final del sitio web, no en el punto final REST. Los puntos finales del sitio web no admiten SSL en absoluto ; solo lo hacen los puntos finales REST. Además, todos los certificados comodín solo admiten un máximo de uno*
y solo puede aparecer en el componente de nombre de host más a la izquierda, por lo que no es realmente una limitación de S3.https://s3-us-west-2.amazonaws.com/my-bucket.with-dots.in-us-west-2/key
. Punto final regional incorrecto = error de redireccionamiento.Suponga que tiene una zona alojada abc.com. y crea un cubo abc.com (que no aparece en la lista en alias de rutas), puede pensar que es el. después del nombre, que no puede nombrar los cubos con
Prueba esto también. Porque la primera vez que creé el cubo con el nombre correcto y aún no funcionó. Créeme, tengo TOC, así que no me perdí una parada completa o una coma.
Esto funcionó para mí probando casi todo: algunas sugerencias que veo es cerrar sesión e iniciar sesión para algún tipo de borrado de caché, no estoy seguro
fuente