【问题标题】:ImageMagick Suddenly Stopped Working in Firefox Only?ImageMagick 突然停止仅在 Firefox 中工作?
【发布时间】:2012-09-26 22:49:30
【问题描述】:

所以我使用 ImageMagick 已经有一段时间了,但它最近才停止在 Firefox 中运行。我正在运行以下代码行:

exec('/usr/bin/convert /home/usr/public_html/upload/'.$filename.'[0] /home/usr/public_html/upload/'.$newfilename);

它只是将上传的 PDF 文件转换为 JPG 用于预览目的。现在,从今天开始,这一直运行良好。现在它将正常上传 PDF,但不会创建 JPG。没有错误或错误日志,它就在那里。

这也只发生在 Firefox 中(用 IE 和 Chrome 测试,工作正常)。现在我的问题是,有人知道为什么会发生这种情况吗?或者以前有人遇到过这种情况吗?

任何帮助都会很棒,谢谢!

【问题讨论】:

  • shift+refresh 它神奇地无法正常工作......
  • 这不是浏览器的问题,你遗漏了一些小东西,但根据你给我的,我不能告诉你。
  • @bigman 我确实尝试过 shift+refresh 并手动清除所有浏览器中的所有缓存,但我仍然得到相同的结果。适用于 IE 和 Chrome,不适用于 Firefox。谢谢您的帮助。我一定是错过了什么......
  • 它很可能不再在 Chrome 和 IE 中工作了。清除这两个中的缓存,看看它是否在那里中断。如果那里有很多文件,这似乎是文件系统问题。
  • @McKracken 这就是我最初的想法。我也清除了 IE 和 Chrome 上的缓存,仍然得到相同的结果。如果您碰巧有时间,请随时在 Firefox 中尝试:Here's the Link。格式将关闭,但应该可以完成工作。

标签: php firefox imagemagick imagemagick-convert


【解决方案1】:

事实证明,这种文件类型限制甚至会在一开始就阻止 PDF 文件上传。

if ($_FILES["picture"]["type"] == "application/pdf")

这只发生在使用 Firefox 时。Chrome 和 IE 似乎对此反应良好(是的,我也碰巧测试了一些旧版本)。在完全相同的 Firefox 版本上也有极少数情况下它在其他人的系统上运行良好。

我的解决方案最终是删除 PHP 文件检查并在另一端放置一个 javascript 文件检查。它现在似乎可以在所有主流浏览器中运行。

感谢大家的帮助!

【讨论】:

  • 永远不要相信您从客户端浏览器获得的 MIME 类型标识!始终在服务器上本地识别文件类型!请参阅php file upload 和“...这种 mime 类型在 PHP 端没有被检查,因此不要认为它的价值是理所当然的......”
  • @Petr 太棒了,非常感谢。我知道有人可以对此有所了解。
猜你喜欢
  • 1970-01-01
  • 2017-08-22
  • 2021-02-01
  • 2016-12-29
  • 2018-05-09
  • 2015-12-07
  • 2015-08-23
  • 2014-02-05
相关资源
最近更新 更多