Error “failed to open stream: HTTP request failed!Error” pada class “image-editor-imagick”.

Kronologi

Malam ini, saya nggak sengaja menemukan error di salah satu website saya, iseng akses dari HP, lah kok error? padahal beberapa hari belakangan ini normal-normal aja. Keterangan errornya seperti ini :

Warning: file_get_contents(http://wikikombucha.com/XXX/XXX/XXX/XXX/wiki-kombucha-logo.png): failed to open stream: HTTP request failed! in /home/XXX/domains/wikikombucha.com/public_html/wp-includes/class-wp-image-editor-imagick.php on line 154

Warning: file_get_contents(http://wikikombucha.com/wp-content/XXX/XXX/XXX/wiki-kombucha-logo.png): failed to open stream: HTTP request failed! in /home/XXX/domains/wikikombucha.com/public_html/wp-includes/class-wp-image-editor-imagick.php on line 154

Penyebabnya

Walaupun errornya ada di : “class-wp-image-editor-imagick.php on line 154”, tapi kalau dilihat, penyebabnya adalah file gambar ini : wiki-kombucha-logo.png.

Kalau dilihat dari errornya lagi, itu disebabkan karena urlnya masih pakai http. Gambar itu saya upload waktu diawal awal bikin website, sebelum menerapkan https. Sehingga, di database, terekam dengan alamat http.

Setelah saya cek gambar tersebut, sebetulnya itu gambar logo yang lama, dan sudah tidak dibutuhkan lagi. Solusi bodo bodoannya ya tinggal hapus aja gambar itu, ia nggak?

Tapi tidak ngefek apa apa.

Nah disinilah letak kebingungannya. Kenapa file gambar sudah terhapus permanen, tapi tetap muncul pada error? kan sudah di hapus? ia nggak?

Solusi

Seperti biasa, waktunya mengeluarkan jurus handalan 😅, yaitu matiin satu persatu plugin, karena saya curiga url gambar tersebut nyantol di database si plugin. Tapi dengan catatan, setelah kita pastian semua url ini tidak ada di file html atau php kita ya. Seperti di header.php, index.php, footer.php, functions.php, dll.

Setelah mematikan semua plugin, lalu menghidupkan lagi satu persatu. Jadi tiap menghidupkan satu plugin, kita refresh halamannya, memastikan errornya muncul atau tidak. Kalau setelah menghaktifkan satu plugin, lalu errornya muncul, berarti plugin itu yang bermasalah.

Daaaaan, akhirnya ketemulah si plugin bermasalah itu. Ada di “Markup (JSON-LD) structured in schema.org” ini adalah plugin untuk pengimplementasian struktur html dari schema.org.

Fungsinya untuk menstandardisasi tag HTML yang akan digunakan oleh webmaster untuk membuat mesin pencari mudah mengidentifikasi, website ini tentang topik apa, dll.

Setelah saya cek pengaturan pluginnya, ternyata benar aja, url gambar tersebut masih nyangkut disini.

Ya berarti tinggal ganti dengan gambar baru. ia kan? upload gambar baru, simpan perubahan, lalu coba refresh lagi.

Apakah berhasil?

Ternyataaaaa Tiidaaaaaaaaaaaak 😂

url gambar sudah ter-update ke file yang baru, tapi errornya tetap muncul. Untuk sementara saya simpulkan bahwa error terjadi, karena plugin mengakses konten menggunakan HTTP sedangkan server host saya menolak, sehingga terjadilah error tersebut.

Sebetulnya ada pengaturan untuk mengijinkan akses ke HTTP, tapi untuk alasan keamanan, saya mending pakai plugin lain saja. Karena saya cek, plugin ini sudah tidak ada update lagi sejak lama.

Jadi solusinya, saya lepas plugin “Markup (JSON-LD) structured in schema.org” ini.

Dan website saya kembali normal.

Ini kasus yang jarang terjadi, karena di google pun, cuman ada 1 kasus yang paling mendekati, dan itupun jenis masalahnya agak berbeda. Dan solusi yang ia ambil adalah mengubah pengaturan di server, pada bagian “allow_url_fopen”.

Saya sih nggak mau pakai cara itu, untuk alasan keamanan.

Dan ini hanya catatan pribadi, tapi kalau ini bermanfaat juga buat kamu, ya syukurlahhhh heheheh.

Salam,

Putu Adi.


belajar kombucha

Follow saya di sosial media

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments