我們有一個使用Andrew Valums ajax文件上傳器的網絡應用程序,如果我們一次啓動5 - 10個圖像上傳,更常見的是至少2或3會導致相同的gd錯誤「Corrupt JPEG數據」PHP文件上傳損壞的JPEGS
Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]:
gd-jpeg, libjpeg: recoverable error: Corrupt JPEG data:
47 extraneous bytes before marker 0xd9 in ....
但是這並沒有發生我們的老測試服務器上,或地方發展盒的,只是我們新的生產服務器上。
服務器上的文件大小與本地計算機上的文件大小相同,因此它完成了上傳,但我認爲數據正在被服務器損壞。
我可以刪除它們,並再次上傳,或者通過手動FTP
我們對Godaddy的共享主機和剛開始有一個新的盒子這個問題(我上傳的「修復」破損文件設置,所以大概說明一下:) CentOS 5.5+,Apache 2.2.3,PHP 5.2.10
你可以在這裏看到一些例子好的和壞的圖片。 http://174.127.115.220/temp/pics.zip
當我BinDiffed他們,我看到一致的模式腐敗總是64字節塊,雖然損壞的塊之間的距離不是常數4356號出現了很多。
我真的認爲我們可以排除互聯網作爲錯誤檢查和TCP重傳是非常可靠的,進一步似乎沒有區別瀏覽器版本,或者如果我關閉反病毒和防火牆。
所以我選擇Apache/PHP的配置?
我可能幫不了你,但這是一個很好的問題,很好的工作 – rockerest
這可能不是一個解決方案,但你有沒有嘗試過不同的方法網絡服務器?總是有'nginx'和'lighttpd'。 – Blender
是的我確定不同的服務器可以解決這個問題,因爲它只在新服務器上啓動,這就是爲什麼我覺得這是一個Apache/PHP的配置問題。 –