1. S3 Cross-Region Replication (CRR): AWS S3 Documentation, "Replicating objects," section "Replication use cases." The documentation states a key use case is to "Replicate objects to reduce latency" by maintaining object copies in AWS Regions that are geographically closer to your users. This supports option B.
2. Lambda@Edge for Dynamic Origin Selection: AWS CloudFront Developer Guide, "Customizing at the edge with Lambda@Edge," section "Example: Origin selection based on country or device type." This guide provides an example of using a Lambda@Edge function on the origin-request event to change the S3 origin domain name based on the CloudFront-Viewer-Country header, which directly supports the implementation described in option D.
3. S3 Transfer Acceleration Use Case: AWS S3 User Guide, "Configuring fast, secure file transfers using Amazon S3 Transfer Acceleration." The guide explains that Transfer Acceleration is designed to speed up "transfers of files over long distances between your client and an S3 bucket," focusing on the client-to-S3 path, primarily for uploads.
4. Global Accelerator vs. CloudFront: AWS Global Accelerator Developer Guide, "AWS Global Accelerator FAQs," section "When should I use Global Accelerator vs. Amazon CloudFront?". The documentation clarifies: "CloudFront improves performance for both cacheable content... and dynamic content... Global Accelerator improves performance for a wide range of applications over TCP or UDP". This distinguishes CloudFront as the correct choice for this HTTP content delivery scenario.