- Newest
- Most votes
- Most comments
It seems like the OPTIONS request is being blocked either due to incorrect CORS configuration or WAF rules blocking the request. A few things to check:
Verify that the CORS configuration on the S3 bucket allows the Origin, Access-Control-Request-Method and Access-Control-Request-Headers that are being sent in the OPTIONS request.
Check if a WAF web ACL is associated with the CloudFront distribution and blocking the OPTIONS request. The WAF rules need to allow OPTIONS requests to pass through.
Make sure the CloudFront distribution behavior allows OPTIONS method.
Try simplifying the CORS configuration on S3 to just allow all origins, methods and headers as a test:
[
{
"AllowedHeaders": ["*"],
"AllowedMethods": ["GET","PUT","POST","DELETE","HEAD","OPTIONS"],
"AllowedOrigins": ["*"],
"ExposeHeaders": []
}
]
Check CloudFront and S3 access logs to see exactly what requests are reaching the origin and getting blocked.
Relevant content
- asked 2 years ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 3 months ago
- AWS OFFICIALUpdated 2 years ago
I was assuming that cloudfront itself handled the CORS requests, and no setup from S3 side was needed. I solved de problem after configure CORS on S3.