Safari PHP表单提交 - 文件上传挂起

时间:2013-04-09 05:58:30

标签: php html safari

我对safari 5+有一个问题。当客户选择要通过简单HTML格式上传的图像文件时,Safari 5.1的MAC版本(到目前为止我发现的唯一一个浏览器)会无限期地挂起。

我的上传时间和大小在php.ini设置正确,它适用于所有其他浏览器(FF,Opera甚至IE!)所以我不认为我在HTML或PHP中有一些新手错误。

我搜索了很多帖子,发现了与此问题相关的错误报告(https://bugs.webkit.org/show_bug.cgi?id=5760)。我也找到了几个Ajax的解决方法,但没有一个是合适的。我没有在这个页面上使用Ajax,实际上由于重定向,我不想反正。

有人知道解决方案吗?

另外......像向文件添加<? header('Connection: close'); ?>这样的建议会让Opera更糟糕。

编辑:2013年4月10日 我仍然没有弄清楚为什么Safari会挂起一些图片上传。我正在进行此编辑,以防有人遇到类似的问题。顺便说一句,当Safari在VirtualBox中运行时,每次上传失败都不像Firefox或IE那样工作正常。 (也许是设置问题?)

我发现这个解决方法很容易实现,到目前为止我可以测试的每个主流浏览器都可以使用。 (资料来源:http://www.atwebresults.com/php_ajax_image_upload/)然而,最初的问题仍然存在。谢谢。

1 个答案:

答案 0 :(得分:0)

lighttpd的解决方法:

$HTTP["useragent"] =~ "Safari" {
$HTTP["useragent"] !~ "Chrome" {
  server.max-keep-alive-requests = 0
}
}

Jamis Buck发现了它,我添加了配置行。 第二条规则避免将Keepalive限制为Chrome,后者也包含Safari子字符串。 由https://bugs.webkit.org/show_bug.cgi?id=5760

提供