HTTPS 上的 SWFUpload 无法正常工作
当目标 servlet 侦听 HTTPS 时,我在使用 SWFUpload 上传文件时遇到问题。 在 HTTP 上它工作得很好。
仅当使用 FireFox 或 Opera 时才会出现此问题。在 IE 上它工作正常 - 没有尝试过其他浏览器。
编辑: 处于调试模式时,SWFUpload 提供的错误消息:
SWF DEBUG:事件:uploadProgress (OPEN):文件 ID:SWFUpload_0_0 SWF DEBUG:事件:uploadError:IO 错误:文件 ID:SWFUpload_0_0。 IO 错误:错误 #2038 SWF DEBUG:事件:uploadComplete:上传周期完成。
I have trouble uploading files with SWFUpload when target servlet is listening on HTTPS.
On HTTP it works fine.
The issue is only when using FireFox or Opera. On IE it works fine - not tried other browsers.
EDIT:
Error message as provided from SWFUpload when in debug mode:
SWF DEBUG: Event: uploadProgress (OPEN): File ID: SWFUpload_0_0 SWF DEBUG: Event: uploadError : IO Error : File ID: SWFUpload_0_0. IO Error: Error #2038
SWF DEBUG: Event: uploadComplete : Upload cycle complete.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
可能是与证书相关的问题。
检查在这些浏览器中打开目标站点时是否有任何与证书相关的警告。
打开证书并检查其中是否有警告。
Possibly a certificate related issue.
Check if there are any certificate related warnings when you open the target site in those browsers.
Open the certificate and check for warnings in there as well.
这肯定是一个证书问题 - 它将与 HTTPS、Firefox 和官方证书一起使用。
我在发票平台网站上将 SWFUpload 与 HTTPS 结合使用,它适用于 IE、Safari、Firefox 和 Chrome(未测试其他浏览器)。在测试服务器上,Firefox 无法使用 HTTPS,因为没有配置官方证书。
It's for sure a certificate issue - it will work with HTTPS, Firefox and an official certificate.
I use SWFUpload in combination with HTTPS on the site invoiceplatform.com and it works with IE, Safari, Firefox and Chrome (did not test other browsers). On the test server Firefox doesn't work with HTTPS because there's no official certificate configured.
2038 是 Flash IO 错误:
“Flash IO 错误不是很有帮助。同样的几个几乎所有内容都会返回错误号。
以下是导致这些错误代码的一些常见问题:
要调试这些问题,我首先验证我的上传正在使用指向我的 upload.php 的标准 HTML 上传表单进行工作”
如果是 http,我建议使用 fiddler 或wireshark,但我认为这对 https 没有帮助。
2038 Is a Flash IO Error:
"Flash IO Errors are not very helpful. The same couple of error numbers are returned for just about everything.
Here are some common issues that cause these error codes:
To debug these issues I first verify that my upload is working using a standard HTML upload form pointing at my upload.php"
If it were http I'd suggest using fiddler or wireshark but I don't think that will help for https.
这似乎是一个证书颁发机构问题:通过 HTTPS 进行的 SWF 讨论
It appears to be a certificate authority issue: SWF discussion over HTTPS
上次我在网站上遇到了一些关于 ssl 安全性、SWFUpload 和其他 Flash 上传器的巨大问题。总是出现错误#2038。此外,在 Facebook 上共享 https 网站的内容时也存在问题。我花了很多时间寻找解决方案,我找到了! ssl 证书有问题。
首先,如果您遇到同样的问题,您将需要原始证书,而不是自行生成的证书,因为 Flash 在使用第二个证书时存在问题。站点服务器位于 Nginx 上,因此您将在此处正确安装证书,这是说明。要点是连接初级证书和中间证书。如果您不这样做,您的页面将正常工作,但 Flash 上传器无法正常工作,即使您尝试卷曲
https:// your-site.com
您可能会看到错误,说明证书存在问题。
有趣的是,在 Windows 和 Mac OS 机器上,即使没有连接证书,闪存也能正常工作,而在 Ubuntu 上却存在问题。但在每个系统上,在 Facebook 上共享都会出现问题,因为它取决于 FB 服务器配置。
Last time I had some huge problem on site with ssl security and SWFUpload and other flash uploaders. There was always error #2038. Additionally there was a problem with sharing content from https site on Facebook. I have spent a lot of hours to find the solution and I found it! There was problem with ssl certificates.
First of all you will need original and not self generated certificates if you have same issue because Flash has problems with second ones. The site server is on Nginx so you will install certificates properly here is the instruction. And the main point is Concatenate the primary certificate and intermediate certificate. If you won’t do it yours page will be working properly but not the flash uploader and even when you try to
curl https://your-site.com
you might see error that explains that there is problem with certificate.
What is interesting that on Windows and Mac Os machines the flash works properly even without concatenating certificates and there is problem on Ubuntu. But on every system is problem with sharing on Facebook as it depends on FB servers configuration.