v-viewer图片打不开一直在刷新_WordPress 上传图片时 async-upload.php出现520 Bug的原因及解决方案...
在更換主機(jī)服務(wù)商,以及將博客搬家后,在上傳圖片時總是報一個錯,不管是在編輯文檔的頁面,還是在多媒體管理頁面。給出的信息是圖片后處理失敗,可能的原因是服務(wù)器忙,圖片太大,或者是尺寸超標(biāo)。然而詭異的是,當(dāng)刷新頁面的時候,這個圖片是成功上傳到服務(wù)器的,并且壓縮更名等后處理步驟也已經(jīng)完成。可是就是每次會有這么一個煩人的錯誤警示。而且很影響記錄內(nèi)容的連貫性,每次需要插入一張照片的時候,就需要刷新一下才能顯示,那么我文章沒寫完,插入圖片刷新就會把我沒保存的文字給弄沒,很是不方便。
在Chrome控制臺顯示的HTTP錯誤是這樣:
1moxie.min.js:1 POST http://域名.com/blog/wp-admin/async-upload.php 520我根據(jù)這個錯誤提示開始找原因,服務(wù)器忙首先排除。因?yàn)榉?wù)器是我自己的,忙不忙我清楚。另外這個問題也不是一換到這個主機(jī)商就出現(xiàn)了,而是用了一段時間才出現(xiàn),所以這個方面不再考慮。第二是我的圖片太大,這個是有可能,我服務(wù)器沒有在這一條進(jìn)行配置使用的是默認(rèn)選項,最大照片不能超過2M,但是我最近上傳的照片都是截圖,體積很小,并且嘗試了至少有幾十張圖片吧,大大小小不同格式都試過了,都是同樣的錯誤。第三個原因也不可能了,嘗試那么多圖片,全部都沒超過2500像素。
我谷歌查資料,這個問題出現(xiàn)的頻率很低,查到的相關(guān)網(wǎng)頁寥寥,很多都集中在三個可能原因的后兩個,我嘗試過改過像素限制,以及體積限制,都不能解決我的問題。stateOverflow基本上每個相關(guān)的帖子我都看過,每一個回答挨著嘗試。wordpress官方論壇也有相關(guān)帖子,可惜在我這里統(tǒng)統(tǒng)失效。我前前后后查了有三次四想要把這個問題解決,每次都好打一會兒時間各種嘗試,可是真是邪門兒了,上百個頁面看過后就是沒有一個奏效的方法,關(guān)鍵的關(guān)鍵是我最近并沒有怎么搗鼓博客程序,也不是由于我自己搞壞的。
今天又一次忍不了了,勞動節(jié)假期宅在家也不能出門,下決心一定要把這個煩人的bug給解決掉。終于在這個頁面找到了我遇到問題的真正原因
https://www.wpbeginner.com/wp-tutorials/how-to-fix-the-http-image-upload-error-in-wordpress/
這個頁面介紹了4中解決上傳圖片時候出現(xiàn)HTTP錯誤的方法,第一第二講的可能是網(wǎng)絡(luò)原因,以及服務(wù)器限制文件大小的原因。這個在我這里已經(jīng)排除了,因?yàn)槲仪宄业姆?wù)器圖片大小限制,以及幾個月了一直有這個錯誤也不是網(wǎng)絡(luò)的原因。文中第三條引起了我的注意,文中講WordPress使用兩種方法來處理圖片,一個是PHP的GD庫,另一個是Imagick庫。Wordpress會選擇一個服務(wù)器上安裝了的庫去使用。并且文中講到Imagick總所周知不穩(wěn)定,經(jīng)常引起莫名其妙的HTTP錯誤。我受到啟發(fā)想起來,我在博客搬家后前期沒有遇到我這篇文章的bug,是后來遇到的。在使用服務(wù)器一段時間后,我通過wordpress官方健康度檢測,當(dāng)時我記得推薦我安裝Imagick庫,說可以提高wordpress性能。我當(dāng)時確實(shí)就安裝了。會不會就是這個庫的原因,以至于后來wordpress開始使用Imagick處理圖片,從而出現(xiàn)我遇到的這個bug。
于是我從服務(wù)器上將這個庫卸載,然后重啟Apache:
sudo apt remove php-imagick sudo service apache2 restart曙光終于出現(xiàn)了,困擾我半年的一個bug終于小時了,真的是這個庫的原因。
上邊那個教程第三點(diǎn)講我們可以通過修改主題functions.php文件,從而指定wordpress使用GD庫而不是Imagick。我相信這個應(yīng)該也是可以解決問題的。文中第四點(diǎn)講Imagick在使用服務(wù)器資源的時候可能出問題,尤其在共享主機(jī)上。Imagick會嘗試使用多線程從而提升圖片處理效率,而有些主機(jī)上限制多線程的使用,從而出現(xiàn)報錯的情況。通過修改.htaccess讓Imagick只是用1個線程而避免報錯。這個可能就是我遇到的問題的根本原因了,我現(xiàn)在使用的是一家小運(yùn)營商,很便宜資源很足,3.99歐每個月,4GB雙核,300GB的HDD+SSD Boosting,流量還無限,并且機(jī)房離我住的地兒還近,就幾十公里。稍微熟悉點(diǎn)主機(jī)市場的同學(xué)都知道,這個價格就像是騙錢的一樣讓人難以置信。不過確實(shí)他們說到的這些真的足量,用起來很香。但是在看不見的地方,可能他們?yōu)榱斯?jié)省成本,就限制的比較緊,我猜測我的問題應(yīng)該就是他們對于多線程做了限制的原因。
我復(fù)盤這個怪異問題出現(xiàn)的原因,首先是我安裝了Wordpress作為可選項的一個庫Imagick,這個不安裝完全不影響wordpress的使用。另外我使用了一家極為不知名的服務(wù)商,各個事情都是有代價的,可能在絕大多數(shù)知名主機(jī)商對這個并沒有做出限制,而我恰巧遇上了。第三是我是使用新服務(wù)器過了一段時間才安裝的Imagick,開始使用的是GD也沒有錯誤提醒。并且Imagick也是Wordpress推薦的,導(dǎo)致我遇到問題時候壓根沒考慮過是服務(wù)器的限制,我把所有的經(jīng)歷都放在在Wordpress找錯上了。
我最終的解決辦法,并不是在wordpress指定使用GD庫,或者修改服務(wù)器配置讓Imagick只使用一個線程。我是直接講Imagick在服務(wù)器上給卸載了。。。因?yàn)檫@個庫是個提升性能錦上添花的,我想先看看沒有這個庫用一段時間什么感覺,在有必要的時候,我再選擇安裝。
總結(jié)
以上是生活随笔為你收集整理的v-viewer图片打不开一直在刷新_WordPress 上传图片时 async-upload.php出现520 Bug的原因及解决方案...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微星主板超频_微星垄断AMD、Intel
- 下一篇: with as 用法_介词with用法