asp.net - swfupload 不允许我从一台服务器上传到另一台服务器

标签 asp.net swfupload

我们有两个网络服务器,我们已经在这两个服务器之间专门处理任务。 我们已经决定将所有的 asp/aspx 页面放到一台服务器上,并将 upload.aspx + sql 服务器放到另一台服务器上:

这是服务器的名称:

http://server1.somecompany.com//这是所有页面所在的位置 + swfupload

http://server2.somecompany.com//这是 upload.aspx 和 sql server 所在的位置

这是 add_item.asp 中的代码,其中 swfupload 将从 server2 调用 upload.aspx

SWFUpload.onload = function () {
    var audio_settings = {
        flash_url : "../script/swfupload.swf",
        upload_url: "http://server2.somecompany.com/upload.aspx", // this is where swfupload from server1 call server 2
        post_params: {
            "ASPSESSID" : "{CDDAF2E2-1178-4465-9842-E54751DE8664}",
            "HELLO-WORLD" : "Here I Am",
            "section" : "sound"
        },

当我单击上传按钮时,swfupload 尝试将我的页面重定向到 server2.somecompany.com,但没有正确完成它的工作

但是当我将 upload_url 更改为:

http://server1.somecomapny.com

一切正常

我知道这是关于 swfupload 中的安全问题,他们已经这样解决了,但这种固定让我们感到茫然。

我该怎么办?

问候。

最佳答案

这是 Flash 中的一项安全措施。但是,您可以将远程服务器配置为接受这些请求,方法是在服务器的 HTML 根目录中包含一个名为 crossdomain.xml 的文件。

文件应该是这样的:

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>

  <allow-access-from domain="[ YOUR SOURCE DOMAIN HERE ]" to-ports="80" />

</cross-domain-policy>

如果您必须允许从任何地方访问,请将“[此处是您的源域]”替换为星号“*”。

有关详细信息,请阅读此处:www.adobe.com/devnet/flashplayer/articles/cross_domain_policy.html

祝你好运!

关于asp.net - swfupload 不允许我从一台服务器上传到另一台服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3667687/

相关文章:

php - 使用 SWFUpload 和 PHP session 问题

javascript - 如何进行部分页面重新加载?

c# - 是否可以捕获并处理网站卸载事件 - asp.net 网页 razor 2?

c# - 是否可以迭代Asp.Net Web服务中的循环

asp.net - 将单选按钮列表绑定(bind)到 gridview 中的列

javascript - Swfupload 在 IE 中突然停止工作(使用 flash 10 和 windows 7)

php - SWFUpload 是否可以将多个文件上传到单个 php 脚本执行

javascript - .NET 中的 js 包含文件

asp.net - 对字符进行编码

file-upload - 上传前检查文件大小的其他方法