Guide

CloudFront "The Request Could Not Be Satisfied": Request Blocked, Bad Request, and Country Blocks Explained

CloudFront's error page has several variants: a WAF block, a country restriction, a bad request, a signed link, or a broken distribution. Which is which, and what to do.

HProxy Team··7 min read
HProxy.Guide

Free proxies won't hold up here.

Shared datacenter IPs get flagged and dropped fast. When it has to hold, gaming, streaming, accounts, you need mobile and residential IPs that read as a real device, from $0.44/GB, pay as you go.

See plans & pricing

Amazon CloudFront's error page has a house style: a bold "ERROR: The request could not be satisfied." at the top, a second line that varies, a paragraph of boilerplate about too much traffic or a configuration error, a note to site owners about the CloudFront documentation, and a footer that reads "Generated by cloudfront (CloudFront)" with a Request ID. People search for the first line, because it is the biggest, and the first line means almost nothing on its own. The second line is the diagnosis.

CloudFront sits in front of a large share of the web, from small sites hosted on S3 to the largest streaming and retail services, and it generates this page itself whenever it cannot or will not return the site's content. The "cannot" cases are about the site's own servers or configuration, and a visitor can do nothing but wait. The "will not" cases are security rules and geographic restrictions, and those are the ones where what you change on your side decides whether the page goes away. Telling the two apart takes one look at the second line.

The variants, and what each one means

Second line on the pageStatusWhat happenedWho can change it
Request blocked. We can't connect to the server for this app or website at this time.403An AWS WAF rule attached to the distribution blocked the requestThe owner adjusts the rule; you can change what it sees
The Amazon CloudFront distribution is configured to block access from your country.403A geographic restriction denied your countryThe owner; you can arrive from an allowed country
Bad request. We can't connect to the server for this app or website at this time.400 or 403The request was malformed, or the distribution is not set up for the hostname you usedThe owner (an alternate domain name not added to the distribution is a documented cause)
This distribution is not configured to allow the HTTP request method that was used for this request.403A method such as POST on a distribution that only allows GETThe owner, or the developer of the app making the request
Missing Key-Pair-Id query parameter or cookie value.403The content is private and needs a signed URL or cookie that your request did not carryReload from the site itself; the link you used is expired or incomplete
CloudFront attempted to establish a connection with the origin, but... / CloudFront wasn't able to connect to the origin.502, 503, 504The site's own server did not answer CloudFrontThe owner; wait and retry

Amazon's own troubleshooting page for 403s lists the causes from the owner's side: an alternate domain name not configured on the distribution, AWS WAF on the distribution or at the origin, a custom origin or S3 bucket returning its own 403, geographic restrictions, signed URLs or cookies, and stacked distributions. One line from that page is worth quoting for visitors, because it explains why support sometimes cannot tell you what happened: when AWS WAF sits in front, "CloudFront can't distinguish between a 403 error code that's returned by your origin and a 403 error code that's returned by AWS WAF when a request is blocked". The owner has to look at the web ACL to know which rule fired, and the Request ID is what makes that lookup fast.

"Request blocked": the security variant

This is the one that brings VPN users, travellers, and scrapers to the same page. AWS WAF lets the site owner block by address reputation, by country, by rate, by request pattern, and, with its Bot Control rules, by how much the request looks like a browser. A person on a shared VPN exit, a corporate gateway that exits from a cloud range, or a mobile carrier's shared address can be blocked by a reputation or rate rule that was never aimed at them.

Work through it in order:

  1. VPN or proxy off, reload. The block following the VPN is the common case. Reconnect elsewhere if you need it.
  2. Another network. Phone on mobile data, then Wi-Fi. If one works and the other does not, the address is the cause.
  3. A clean browser. Private window, extensions off. Header-stripping and user-agent spoofing extensions change what Bot Control sees.
  4. Slow down. Rate-based rules count requests per address over a few minutes and expire on their own. Refreshing a checkout page or a drop page rapidly is exactly what they watch for.
  5. Send the Request ID. Still blocked with no VPN and no extensions? The rule reaches further than the owner intended, and the Request ID lets them find it.

If a proxy was configured on your device by something else, read the address before you remove it; our guide on turning a proxy off explains what a local or unfamiliar address means.

"Configured to block access from your country": the geographic variant

There is no rule to argue with here. The owner drew a map, and your address is on the wrong side of it. Amazon's documentation says only that blocked users receive a 403. On a VPN, the exit is the wrong country: disconnect, or pick a server in a country the site serves. Travelling, the same applies to the hotel Wi-Fi. If you live in the blocked country, the site is declining to serve your region, and the only way to see it is an address in a served one. People with a legitimate reason to do that, such as accessing a service from the country they hold an account in, are best served by a fixed address rather than a shared VPN node, because the WAF variant above is waiting behind the geographic one, and shared exits trip it. A static ISP proxy in the served country is a single household address assigned to one user.

"Bad request", "not configured to allow the HTTP request method", and the key-pair line: the configuration variants

These are not about you. "Bad request" appears when the request is malformed or when the hostname you typed is not one the distribution knows, which Amazon lists as a CNAME that was added in DNS but not to the distribution; the fix is on the owner's side, and a visitor can only try the site's canonical address (with or without www) in case the other is the configured one. The method line appears when an app sends a POST or PUT to a distribution that only permits reads, which is a developer's problem. The key-pair line appears on private content that requires a signed URL or cookie: the link you followed is expired or was copied incompletely, and reloading the content from the site's own navigation issues a fresh one. None of these change with a VPN, a different network, or a different browser.

The origin variants: 502, 503, and 504

When the second line says CloudFront could not connect to the origin, or the origin returned an error, the site's own server is the failure. The visitor's connection worked all the way to CloudFront, which is why the page renders at all. Wait and retry. Scrapers that see these in bulk should read our guides to 502 Bad Gateway and 504 Gateway Timeout explain how to tell a struggling origin from a proxy problem and how to back off without making it worse.

For automation

Scrapers meet "Request blocked" for the address reasons and for the request itself. AWS WAF's Bot Control rules read the TLS fingerprint and headers, and at the targeted level run a browser challenge, so a datacenter address with a Python fingerprint is refused on both counts. Changing the exit to a residential address clears the address rules; the rest needs a browser-grade client and sessions that hold one address for the length of a flow. Bypassing AWS WAF covers what Bot Control checks, where residential proxies fit, and the setup that gets through, and how websites detect proxies covers the address side.

Read the second line, then act

Read the second line. "Request blocked" is a security rule: VPN off, other network, clean browser, slow down, then send the Request ID. The country line is a map: arrive from a served country. "Bad request", the method line, and the key-pair line are the site's configuration or an expired link, and nothing on your side changes them. Origin errors are the site's server, and the fix is patience.

Frequently asked questions

What does the request could not be satisfied mean?
It is the generic first line of every error page Amazon CloudFront generates itself, the content delivery network in front of a large share of the web. The line under it is the one that matters: Request blocked means a security rule refused you, the country line means a geographic restriction, Bad request means the request was malformed or the distribution is misconfigured, and the origin lines mean the site's own server did not answer. The Request ID at the bottom identifies your attempt in CloudFront's logs.
What does Request blocked, we can't connect to the server for this app or website mean?
An AWS WAF rule attached to the CloudFront distribution blocked your request. Amazon's documentation notes that CloudFront cannot distinguish a 403 from AWS WAF from a 403 the origin returned, so the owner has to check the web ACL. For a visitor, the usual triggers are the address you arrived from (VPN, proxy, hosting range), a request that looked automated, or a rate-based rule after many quick requests.
Why does it say the distribution is configured to block access from your country?
The site's owner enabled CloudFront's geographic restriction and your address maps to a country on the deny list, or outside the allow list. Amazon's documentation says blocked users simply receive a 403. On a VPN, the exit is in a blocked country; disconnect or choose another server. Physically in that country, only an address in an allowed one gets through, and the owner decides whether that is acceptable.
How do I fix a CloudFront 403 as a visitor?
Read the second line to learn the variant. For Request blocked: turn off VPN or proxy, try another network, use a clean browser, slow down, then send the Request ID to the site. For the country variant: arrive from an allowed country. For Bad request or a missing key-pair line: reload from the site's own navigation rather than a saved link, since these are configuration and expired-link problems on the site's side. For origin errors: wait.
What is the CloudFront Request ID?
A unique identifier for your request, printed at the bottom of the page after Generated by cloudfront. It plays the same role as a Cloudflare Ray ID or an Akamai reference number: the site's operators can find your exact request in their logs and see which rule or failure produced the page. Include it when you contact them.
Can a proxy get past a CloudFront block?
For a block based on your address or country, arriving from a different address changes the outcome, which is why the page often disappears when a VPN is switched off. For a block based on how the request looks, or for a rate rule, the address is only part of it. Automated access to sites behind AWS WAF needs residential addresses plus a browser-grade client, covered in our AWS WAF guide.

Proxies that don't die mid-job

Residential, ISP, datacenter and mobile, verified by the same engine that runs tens of millions of checks. They read as a real device and hold up under load. Pay as you go, and your balance never expires. $0.44/GB is the 2,000 GB+ rate; a single gigabyte is $0.50/GB, with no minimum order.

129M+ proxy checks run · 100+ countries · HTTP / HTTPS / SOCKS · re-checked every few minutes · no signup