我最近使用的是Uploadify,并将其部署到3个不同的服务器:Windows,带有CGI PHP的LAMP和带有PHP作为模块运行的LAMP。我在Windows服务器中开发了代码,当我将它部署到我的Linux CGI PHP时,Uploadify可以很好地工作。
但是,当我在Linux PHP模块中部署它时,我的Uploadify中出现IO错误。有趣的是我还有其他使用PHP的简单上传代码,它在这个Linux PHP模块服务器中运行良好。
这里的任何人都有相同的经历吗?是否与运行Apache服务器的用户是apache这一事实有关,而文件上传到的目录的所有者是不同的用户。我有chmod 777这个目录,但它仍然不起作用。
任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:4)
刚收到客户的确认,当他将网站移动到非HTTPS时,所有上传工作都正常。因此导致此问题的原因是在没有适当证书的HTTPS站点上使用uploadify。事情是uploadify的Flash组件只是简单地给出IO错误而不是清晰和详细的错误消息。
实际上从使用Flash讨论AJAX上传者的Wordpress论坛上了解了HTTPS导致错误的可能性。
感谢所有评论,我相信评论中建议的许多可能原因,这个HTTPS只是其中之一。
答案 1 :(得分:0)
检查php.ini设置以获取这些变量的值:
max_execution_time
max_post_size
uploaded_file_max_size
post_max_size
file_uploads
此外,.htaccess中的这些条目曾帮助过我:
SetEnvIfNoCase Content-Type "^multipart/form-data;" "MODSEC_NOPOSTBUFFERING=Do not buffer file uploads"
和/或
(安全风险!)
SecFilterEngine Off
SecFilterScanPOST Off
如果还没有,请将其添加到'onError'回调函数(函数(a,b,c,d)):
alert("Error: "+d.type+" Info: "+d.info");