Tenemos una aplicación angular que vive en S3 y nos gustaría que nuestro dominio sirva cuando hay algo después de / pero una página html plana y recursos básicos para servir desde un EC2 cuando se accede a la raíz del dominio.
Hasta ahora no hemos logrado que nada funcione y realmente esperamos que podamos hacer que algo funcione.
Hasta ahora, en Cloudfront hemos intentado hacer la ruta predeterminada a un origen EC2 y /* y event / route a un origen S3 , pero nada parece funcionar.
¿Cómo podemos hacer que nuestro dominio example.com sirva nuestros archivos EC2 pero cualquier otra cosa que no sea la raíz, es decir. example.com/one, example.com/two, etc. ruta a la aplicación de página única S3
Hasta ahora, en Cloudfront hemos intentado hacer la ruta predeterminada a un origen EC2 y /* y event / route a un origen S3, pero nada parece funcionar.
Si entiendo lo que estás tratando de hacer, eso es un poco al revés. * coincide con todo, sin incluir nada e incluyendo más barras.
Cree un nuevo comportamiento de caché que coincida con la ruta / y apunte al origen de EC2. Esto captura la página principal.
Cree un nuevo comportamiento de caché que coincida con la ruta /*/* que apunta al origen de EC2. Esto captura cualquier cosa en una carpeta, por ejemplo, /pics/cats.jpg y /pics/cats/funny.jpg y /pics/cats/hilarious/lol.jpg .
Si hay algún archivo (que no sea la página principal) en la raíz del servidor web en EC2, cree un nuevo comportamiento de caché que coincida con la ruta /*.* que apunte al origen de EC2. Esto captura archivos en el directorio raíz, por ejemplo, /cat.jpg .
Apunte el comportamiento de caché predeterminado a S3. Todo lo que ya coincide con los otros dos o tres comportamientos va a EC2, y lo que sobra va al cubo, que sería / seguido de cualquier carácter excluyendo otro / o . , que habría sido capturado por uno de los comportamientos de enrutamiento a EC2.