Я использую облачную информацию (через безсерверную среду) для развертывания статических сайтов на S3 и настройки распределения облачного фронта с псевдонимом из домена route53.
У меня это работает для двух доменов, каждый новыйдомены, которые были созданы в route53.Я пытаюсь выполнить ту же настройку со старым доменом, который я передаю на route53 от существующего регистратора.
В распределении облачного фронта для этого нового домена не удается загрузить подкаталоги.Т.е. https://[mydistid].cloudfront.net/sub/dir/
не загружает ресурс на https://[mydistid].cloudfront.net/sub/dir/index.html
Существует общий вопрос, охватываемый другими вопросами SO .Вы должны указать s3 bucket в качестве пользовательского источника, чтобы CloudFront применил корневой корневой объект по умолчанию к подкаталогам.
Я сделал это, как видно из моего ресурса serverless.yml CloudFrontDistribution:
XxxxCloudFrontDistribution:
Type: AWS::CloudFront::Distribution
Properties:
DistributionConfig:
Aliases:
- ${self:provider.environment.CUSTOM_DOMAIN}
Origins:
- DomainName: ${self:provider.environment.BUCKET_NAME}.s3.amazonaws.com
Id: Xxxx
CustomOriginConfig:
HTTPPort: 80
HTTPSPort: 443
OriginProtocolPolicy: https-only
Enabled: 'true'
DefaultRootObject: index.html
CustomErrorResponses:
- ErrorCode: 404
ResponseCode: 200
ResponsePagePath: /error.html
DefaultCacheBehavior:
AllowedMethods:
- DELETE
- GET
- HEAD
- OPTIONS
- PATCH
- POST
- PUT
TargetOriginId: Xxxx
Compress: 'true'
ForwardedValues:
QueryString: 'false'
Cookies:
Forward: none
ViewerProtocolPolicy: redirect-to-https
ViewerCertificate:
AcmCertificateArn: ${self:provider.environment.ACM_CERT_ARN}
SslSupportMethod: sni-only
Это приводит к распределению CF с корзиной s3 в качестве 'Custom Origin' в AWS.
Однако при доступе к подкаталогам путь к странице ошибки, а не к корневому каталогу по умолчаниюобъект в этом каталоге.
Что очень странно, так это то, что он использует ту же конфигурацию, что и другой стек, что нормально.Единственное различие, которое я вижу (пока), состоит в том, что в рабочем стеке есть домен, созданный route53, тогда как в нем используется домен, созданный другим регистратором, поэтому я посмотрю, что произойдет после завершения миграции сервера имен.Я скептически отношусь к тому, что это решит проблему, хотя на распределение CF не должен влиять статус домена route53