Your crossdomain file must be located on the server with the flash application that is loading, and not with the files to which it is loaded. Then you specify the S3 domain as an allowed domain.
<allow-access-from domain="s3.amazonaws.com" />
Edit: Well, I'm officially confused.
It seems that JB is right in his comment that I am wrong. From here :
Whenever Flash Player 7 detects a download request outside the domain, the player tries to find the policy file on the server from which it is trying to download data. If the policy file exists and it provides access to the source of the domain of the Flash movie that creates the request, the operation will be successful.
However, we are doing this exact thing (uploading images to the Flash component from a remote Amazon server) on one of our client websites, but our crossdomain.xml
file is located in the root of the loaded web server - Amazon buckets do not contain policy files.
How does our site work? According to the documentation, this should not be!
Edit 2
According to the Wouter comment, what I am doing is a special case that explains why it works for me, even if my crossdomain files are in the wrong place ...
source share