Php 在web服务器上部署flex应用程序问题
我有一个简单的flex应用程序,可以上传本地文件。这是一个简单的按钮,单击事件会出现一个文件对话框 选定的文件然后由PHP脚本处理,并在我的本地机器上运行良好。当我尝试将flex调试或flex发布项目移动到远程服务器时,上载功能不再起作用 如果对网络进行检查,POST将被执行,但由于某些原因,它的状态为“挂起”,持续1分钟,但在成功后未按预期正常运行,则不会上载文件Php 在web服务器上部署flex应用程序问题,php,apache-flex,deployment,flex4,Php,Apache Flex,Deployment,Flex4,我有一个简单的flex应用程序,可以上传本地文件。这是一个简单的按钮,单击事件会出现一个文件对话框 选定的文件然后由PHP脚本处理,并在我的本地机器上运行良好。当我尝试将flex调试或flex发布项目移动到远程服务器时,上载功能不再起作用 如果对网络进行检查,POST将被执行,但由于某些原因,它的状态为“挂起”,持续1分钟,但在成功后未按预期正常运行,则不会上载文件 // file is a file:FileReference object var uploadURL:URLRequest =
// file is a file:FileReference object
var uploadURL:URLRequest = new URLRequest();
var params:URLVariables = new URLVariables();
file.addEventListener(Event.COMPLETE, uploadComplete);
params.maxSize = maxSize;
uploadURL.method = URLRequestMethod.POST;
uploadURL.data = params;
uploadURL.url = uploadScript;
file.upload(uploadURL, IMAGE_FIELD);
file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA, uploadDataComplete);
file.addEventListener(Event.COMPLETE, uploadComplete);
编辑:当我试图将Flash Builder 4.5生成的调试文件夹从C:\www移动到D:\www上的第二个本地主机时,上载脚本不再工作。也许我错过了一些部署选项,只能在我的.mxml所在的C:\www上看到它
Edit2:远程服务器出现问题,即移动上载文件功能无法正常工作。问题出在upload.php脚本,而不是Flex,谢谢您的帮助,也很抱歉打扰您。我想您应该检查几点- 1) 您正在使用的服务路径,在浏览器地址栏中运行时再次检查。 2) 检查上载路径文件夹权限。尝试使用:
var request : URLRequest = new URLRequest("http://{you_site_domain}/upload.php");
检查
loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, ioErrorHandler);
1) 提供服务路径或类似示例
2) 上传的文件有多大,您是否在2Mb以下进行过测试(默认php.ini仅允许)
小文件大小)
3) 您得到的确切错误消息是什么
4) 你能收听ProgressEvent吗,也许你的上传速度太慢了。。。你用的是一个大文件
5) 侦听IOErrorEven.IO_ERROR和SecurityErrorEvent.SECURITY_ERROR是否上载到与swf所在域不同的域?也就是说,我认为使用Flex应用程序(并让用户下载300+Kb)对于一个简单的上传按钮来说是过分的。根据您提供的代码,我不清楚您在使用什么。您是否检查了文件夹的安全性/权限?上传失败主要发生在写入问题上。除此之外,文件大小也是一个障碍,但我想你已经检查过了,正如有人指出的那样。你能提供你的服务路径吗?Flex只能通过3种方式与PHP通信-1)HTTPService 2)WebService 3)Remoting(AMFPHP或任何其他方式),所以你使用的是哪一种以及你是如何使用的?Flash应该可以使用相对URL;应该不需要指定完整的域名。@Flextras:是的,但是当他在更新中指定时,他正在使用指向“c:”frive的路径。。。这不再是相对的了。我想问的是1)和uploadURL.url=uploadScript;例子。您还可以检查服务器上的php日志吗?