- Upload Suite Overview
- What's New?
- Choosing Upload Technology
- Evaluating Upload Suite
- Upload Suite Editions
- System Requirements
- Installation and Deployment Notes
- ActiveX/Java Uploader
- HTML5/Flash Uploader
- Before You Started with HTML5/Flash Uploader
- HTML5/Flash Uploader Architecture
- HTML5/Flash Uploader User Interface
- Getting Started
- Using HTML5/Flash Uploader
- Uploading in ASP.NET
- Uploading in PHP
- Uploading in Other Platforms
- Uploading Images
- Customizing User Interface
- Configuring Common Upload Settings in HTML5/Flash Uploader
- Configuring Files to be Uploaded in HTML5/Flash Uploader
- Sending File at Once or in Several Parts in HTML5/Flash Uploader
- Configuring Fail-safe Upload
- Uploading Large Amount of Images
- Configuring Restriction Rules for Files
- Using HTML5/Flash Uploader at Runtime
- Using Host and Upload Domains that Differ from One Another
- Enabling Cross-Origin Resource Sharing for HTML5 Uploader
- Uploading to Amazon S3 with HTML5 Uploader
- Troubleshooting
- Reference
- Licensing Information
- Legal Notices
Using Host and Upload Domains that Differ from One Another
This article is applicable to Flash Uploader only. For similar information about the HTML5 Uploader see the Enabling Cross-Origin Resource Sharing for HTML5 Uploader topic.
Usually Adobe Flash Player does not allow an swf application to access data that resides outside a domain where the application is hosted. It means that you usually cannot host Flash Uploader on one domain and upload files to another. However, you can manage this task by implementing cross-domain policy for Flash applications.
To allow Flash Uploader to upload files to some target server you should create the cross-domain policy file, named crossdomain.xml, and place it to the root folder of the target server.
Suppose, Flash Uploader is hosted in a server1.com server, whereas it requires to upload files to a server2.com server. In this case files should be placed as follows:
| URL | |
|---|---|
| the Flash control | http://server1.com/Scripts/aurigma.imageuploaderflash.swf |
| a page where Flash Uploader is hosted | http://server1.com/default.html |
| the cross-domain policy file | http://server2.com/crossdomain.xml |
| an upload script; aimed to save files and/or get additional data | http://server2.com/upload.aspx |
The cross-domain policy file have to be like in the snippet below:
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="server1.com" to-ports="*"/>
<allow-http-request-headers-from domain="server1.com" headers="*"/>
</cross-domain-policy>And Flash Uploader should be configured like follows:
<aur:ImageUploaderFlash ID="Uploader1" runat="server"
LicenseKey="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXXX;YYYYY-YYYYY-YYYYY-YYYYY-YYYYY-YYYYYY">
<UploadSettings ActionUrl="http://server2.com/upload.aspx" />
</aur:ImageUploaderFlash><?php
$uploader = new ImageUploaderFlash("Uploader1");
$uploader->setLicenseKey("XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXXX;YYYYY-YYYYY-YYYYY-YYYYY-YYYYY-YYYYYY");
$uploader->getUploadSettings()->setActionUrl("http://server2.com/upload.php");
$uploader->render();
?> var fu = $au.imageUploaderFlash({
id: 'Uploader1',
licenseKey: "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXXX;YYYYY-YYYYY-YYYYY-YYYYY-YYYYY-YYYYYY",
uploadSettings: { actionUrl:"http://server2.com/upload.asp" }
});
fu.writeHtml();Pay attention that you will need a license key for the target domain too! So, you will need to register two license keys: the first one for the domain where Flash Uploader is hosted, and the second one for the domain where files are uploaded to. See the Registering HTML5/Flash Uploader topic for more information.