Estoy tratando de configurar esta regla de enrutamiento de sitios web para mi sitio web de depósito s3 estático usando yaml sin servidor que usa formación en la nube.
<RoutingRules> <RoutingRule> <Condition> <KeyPrefixEquals/> <HttpErrorCodeReturnedEquals>404</HttpErrorCodeReturnedEquals> </Condition> <Redirect> <Protocol>https</Protocol> <HostName>foo.amazonaws.com</HostName> <ReplaceKeyPrefixWith>prod/photos/resize?key=</ReplaceKeyPrefixWith> <HttpRedirectCode>307</HttpRedirectCode> </Redirect> </RoutingRule> </RoutingRules>¿Cómo traduzco eso a mi yaml a continuación?
resources: Resources: UploadBucket: Type: AWS::S3::Bucket Properties: BucketName: ${file(./serverless.env.yml):${opt:stage}.BucketName} AccessControl: PublicRead WebsiteConfiguration: IndexDocument: index.html RoutingRule: //What's the format that goes here?RoutingRules es una lista de propiedad de reglas de enrutamiento de configuración de sitios web de Amazon S3 .
P.ej
RoutingRules: - RedirectRule: HostName: foo.amazonaws.com HttpRedirectCode: "307" Protocol: https ReplaceKeyPrefixWith: prod/photos/resize?key= RoutingRuleCondition: HttpErrorCodeReturnedEquals: "404"Si alguien está interesado, aquí está la representación JSON de la misma configuración
"WebsiteConfiguration" : { "IndexDocument": "index.html", "ErrorDocument": "error.html", "RoutingRules": [{ "RedirectRule": { "HostName": { "foo.amazonaws.com" }, "HttpRedirectCode": "307", "ReplaceKeyPrefixWith": "prod/photos/resize?key=" }, "RoutingRuleCondition": { "HttpErrorCodeReturnedEquals": "404" } }] }