WordPress'te Resim Yükleme Hatası Nasıl Onarılır
Yayınlanan: 2018-02-28Kısa süre önce WordPress Hatalarını Düzeltmek için Eksiksiz Kılavuzumuzu yayınladık ve okuyucularımızdan biri bize e-posta gönderdi ve WordPress'te Resim Yükleme Hatasını nasıl düzelteceğimizi öğrenmek için. O kadar uzun bir süre değil ki, kendi blogumdaki bu hatayı hatırlayamıyorum, bu da beni bütün gece uğraştırdı ve sorunu çözüp düzeltti.
O zamanlar blogum yeni başladı, bu yüzden bu çözümü yayınlamadım, ancak başkalarının bu garip sorunu çözmelerine yardımcı olmak için asla geç değildir.
Temel olarak, bu problemle, WordPress'e herhangi bir resim yükleyemezsiniz ve yükleme gerçekleşirse, medya kitaplığındaki resimleri bozuk olarak gösterecektir. Bu yazıda, WordPress'te resim yükleme sorununu nasıl çözeceğinizi göstereceğiz.
Bu, WordPress Resim Yükleme Hatası ile karşılaşmanızın nedenleridir.
- Görüntü boyutu
- PHP Belleği
- ModGüvenlik
- Eklenti çakışması
- Dosya İzni
- Sunucudaki PHP Sürümü
Görüntü boyutu
Bu, piksel boyutu büyük bir resim, örneğin 4000 x 3000 piksellik bir resim yüklemeye çalıştığınızda olur. Bu, sunucunuzun işlemesi için çok büyük.
Bazı sunucular, görüntünüz bu boyuttan küçük olsa bile bir hata gösterir, bu tamamen sunucu kaynaklarınıza bağlıdır.
Çözüm
Resmin boyutunu küçültün. Örneğin, çok büyük bir piksel görüntüsü eklemeyin. Gönderi içerik alanınız 800 piksel genişliğindeyse, bundan daha büyük bir resim eklemeyin.
Herhangi bir hata olmadan yükleyene kadar resim boyutunu deneme yanılma yoluyla azaltın. Çoğu WordPress sitesi için 1075 piksel yeterlidir, premium bir WordPress teması kullanıyorsanız, gereken görüntü boyutunu öğrenmek için belgelerine bakın.
Genişlemek için yeterli alana sahip olmayacağından ve tek yaptığı o alana kadar küçüleceğinden, sorun şu ki, bu boyuttaki görüntüyü yüklerken WordPress çok büyük miktarda bellek tüketecektir. Bazı sunucular bir WordPress tarafından tüketilebilecek bellek miktarını sınırladığından, bu durumda yükleme sırasında bir hataya neden olur.
PHP Belleği
Tüm PHP üzerinde çalıştıktan sonra WordPress işlevselliği ve kaynakları sınırlandırılabilir ve PHP çalıştıran sunucular bu kaynakları sınırlayabilir.
PHP belleğinizi ister kendiniz arttırabilir isterseniz de web hosting destek ekibinize sorabilirsiniz. Bellek 2 şekilde artırılabilir:
Çözüm
- WordPress Belleğini Artırın
- PHP Belleğini Artırın
WordPress kök dizininizde bulunan wp-config.php dosyanıza bu kodu ekleyerek WordPress belleğini artırabilirsiniz.
define('WP_MEMORY_LIMIT', '256M');
Ana bilgisayar/sunucunuz PHP bellek limitini artırmanıza izin vermiyorsa veya bir dereceye kadar sınırlandırıyorsa yukarıdaki bu ayar çalışmayabilir, bu yüzden doğrudan desteğinizle konuşmanızı ve onlardan sizin için sınırı değiştirmelerini istemenizi öneririm. Zorluğu atlayacaksın. Destek ekibinden PHP belleğinizi artırmasını istemeniz daha iyi olur, ancak eğer uğraşmayı seviyorsanız, aşağıdaki kodu php.in veya php5.ini'nize ekleyin.
memory_limit 256M
ModGüvenlik
Bu güvenliği hiç fark etmemiş olabilirsiniz veya bunu biliyor olabilirsiniz. ModSecurity ayrıca .htaccess olarak da bilinir ve umarım bu dosyayı WordPress kök dizininizde görmüşsünüzdür, çoğunlukla gizlidir.
Sunucunuzda mod güvenliği etkinse, sizin durumunuzda bu dosya soruna neden olabilir.
Çözüm
Yüklemeniz için mod güvenliğini devre dışı bırakmanız gerekiyor, bu nedenle wp-admin klasörü içinde bir .htaccess oluşturun ve aşağıdaki kodları ekleyin.
<IfModule mod_security.c>
SecFilterMotor Kapalı
SecFilterScanPOST Kapalı
</IfModule>
Bu, wp-admin'deki yükleme dosyası alma kodu için mod_security'yi devre dışı bırakacaktır.
Not: Sunucunuzda herhangi bir hataya neden oluyorsa bunu kaldırın.
Eklenti Çakışması
Çoğu durumda, bir eklentinin yükleme işlemiyle çeliştiği doğrulandı. Çoğu durumda, blogum bile eklenti çakışmalarından zarar gördü.
bunun nedeni, bir veya başka bir eklentinin veya WordPress'in en son sürümüne yükseltme nedeniyle tetiklenen bazı eski eklentiler veya bazı sözdizimi hatalarıdır.
Görüntüleri yüklemeye, küçültmeye veya sıkıştırmaya yardımcı olan eklentilerin çoğunlukla hata olduğunu buldum. Bazı durumlarda, görüntüleri sıkıştırmak veya işlemek için bu uygulamayı kullanırsanız, bazı masaüstü uygulamaları da bu hatayı tetikledi.
Ayrıca jetpack, cdn veya aws veya uzak sunuculara yüklemeye yardımcı olan eklentiler, resim yüklemede WordPress hatasına neden olur.
Çözüm
Lütfen bir seferde bir eklentiyi devre dışı bırakmak için devam edin. Resminizi yüklemek ve başarılı olup olmadığınızı görmek için önbelleğinizi ve tarayıcı geçmişinizi temizleyin ve medya yükleyiciyi tekrar ziyaret edin.
Değilse, herhangi bir WordPress eklentisi ve masaüstü uygulaması kullanmamaya çalışın ve bir ham .png veya .jpg yükleyin ve çalışıp çalışmadığını kontrol edin.
Dosya İzni
Görüntüleri yüklerken hataya neden olan bir eklenti veya sınırlı bir bellek değilse, sunucunuzdaki dosya iznine bir göz atmanızı öneririm.
Dosya izni, siz değiştirmeseniz bile otomatik olarak değişebilir.
Bilmek istiyorum. Nasıl değişti?
Hosting şirketiniz sunucularında yükseltme yapıyorsa veya bir eklenti sizin tarafınızdan güncellendiyse, dosya izinleri değiştirilebilir.
Paylaşılan bir web barındırma kullanıyorsanız, bir bilgisayar korsanının dosyalarınıza erişmesi ve dosya izninizin bilgisayar korsanının yüklemiş olabileceği bir yük tarafından değiştirilmiş olma olasılığı vardır.
Dosya iznini bir FTP programı aracılığıyla kolayca değiştirebilirsiniz, hem mac hem de Windows bilgisayarımda ftp için Cyberduck kullanıyorum.
Dosyalarınıza FTP üzerinden erişin ve ardından /wp-content/ dizinine gidin. Orada /uploads/ klasörünü göreceksiniz. Yüklemeler dizinine sağ tıklayın ve dosya izinlerini seçin.
İlk başta, uploads dizininin kendisi ve içindeki tüm alt dizinler için dosya izinlerini 744 olarak ayarlamanız gerekecek. Bunu yapmak için sayısal değer kutusuna 744 girin ve ardından Alt dizinlere tekrar gir'in yanındaki kutuyu işaretleyin.
Son olarak, 'Yalnızca dizinlere uygula' radyo düğmesini tıklamanız gerekir. Bu değişiklikleri uygulamak için Tamam düğmesine tıklayın.
Aynı işlemi yüklemeler klasörü için tekrarlamanız gerekir.
Yüklemeler dizinindeki tüm dosyalar için dosya izinlerini ayarlamanız gerekecek. Bunu yapmak için, yükleme dizinine sağ tıklayın ve dosya izinlerini seçin.
Dosya izinlerinde, iletişim kutusu sayısal değeri 644 olarak değiştirir. Alt dizinlere yinele seçeneğinin yanındaki kutuyu işaretleyin. Yalnızca dosyalara uygula radyo düğmesini tıklayın. Bu değişiklikleri uygulamak için Tamam düğmesine tıklayın.
FTP programınız bu değişiklikleri uygulayacak ve resim yükleyiciniz tekrar çalışacaktır.
Sunucudaki PHP Sürümü
Bu hatayı çözerken yaptığınız tüm görev boyunca fark edilmeden kalır, Çoğu durumda olduğu gibi kimse bunu düşünmez.
Neden çoğu durumda kullanıcılar, ben bu güncelleme düğmesine basmadan önce düne kadar çalıştığını söylesin ki?
Ancak eklentinin, temanın veya WordPress'in güncellenmesi bu hatayı ve diğer birkaç hatayı tetikleyebilir, çünkü WordPress PHP üzerine kuruludur ve takip etmesi gereken bazı standartlar vardır, bu nedenle geliştirici her zaman WordPress için kararlı olan sürümü belirtir.
Sunucu PHP sürümünüz WordPress'in gerektirdiğiyle aynı değilse, sunucu destek personelinizle iletişime geçin ve onlardan PHP sürümünüzün WordPress gereksinimine göre değişiklik yapmalarını isteyin.
Çözüm
(Güncelleme) . Bu düzeltme, birkaç okuyucumuz tarafından belirtildi. Bunun için onlara teşekkür ediyoruz!
Görüntü dosyasının adında kesme işareti olmadığından emin olun (örn. john's-blogging.png), çünkü bu da hatayı tetikleyecektir.
(Güncelleme) . Bir görüntü iyileştirici eklentisi kullanıyorsanız, eklentiyi devre dışı bırakın ve sorunun çözülüp çözülmediğine bakın.
Hala sorunla karşı karşıyaysanız, bana bildirin. Size yardımcı olmaktan ve bu hatayı düzeltmeniz için hangi yöntemin işe yaradığını aşağıya yorum yapmaktan mutluluk duyacağım.