Instalasi gagal: Unduhan gagal. Tidak ditemukan transportasi yang berfungsi

10

'Instalasi gagal: Unduhan gagal. Tidak ditemukan transportasi yang berfungsi '.

Kekeliruan kesalahan ini muncul ketika saya mencoba memasang tema di WordPress. Bagaimana saya mengatasi masalah ini?

mss
sumber
apakah Anda memiliki kesalahan yang sama saat memasang plugin?
mmm

Jawaban:

13

Situs WordPress sebagian besar berfungsi tanpa masalah kecuali di bagian dasbor situs, di mana ada beberapa masalah dengan pembaruan atau pemasangan. Ketika saya mencoba untuk menginstal tema, itu memberi saya kesalahan "Instalasi gagal: Unduhan gagal. Tidak ada angkutan yang berfungsi ditemukan".

Untungnya, saya memperbaiki masalah dengan solusi berikut .

Ternyata, pesan kesalahan ini terjadi ketika ada ekstensi yang hilang pada server pengembangan, sehingga WordPress tidak dapat membuat permintaan HTTP eksternal.

Solusinya cukup sederhana. Ekstensi yang hilang yang memungkinkan permintaan HTTP itu sudah diinstal dengan Wamp Server, Secara default, itu hanya dinonaktifkan. Untuk mengaktifkannya, kita perlu mengedit file konfigurasi php.ini.

Mengedit file php.ini

File php.ini berisi daftar banyak ekstensi dengan beberapa di antaranya dinonaktifkan secara default. Satu-satunya yang harus saya aktifkan adalah ekstensi openssl.

Berikut langkah-langkah untuk mengaktifkan ekstensi itu:

  1. Mulai Wamp Server.
  2. klik pada Wamp Server Icon dan pindah ke opsi PHP-> php.ini.
  3. klik dua kali pada php.ini. jadi, itu akan membuka file php.ini di Text Editor default Anda.
  4. mencari php_openssl.dll dalam file php.ini. -> Anda akan melihat bahwa ekstensi dikomentari:; extension = php_openssl.dll
  5. Batalkan komentar pada garis itu dengan menghapus titik koma (;)
  6. simpan perubahan.
  7. Mulai ulang Server Wamp.

Itu Dia Kita Selesai !!!

Ashish Madhavacharya
sumber
3

WordPress HTTP API telah dibangun sedemikian rupa sehingga berfungsi pada banyak server mungkin, mencoba berbagai cara (transportasi) untuk melakukannya.

Menurut pesan kesalahan, tidak ada transportasi yang berfungsi dan dengan demikian WordPress tidak dapat membuat permintaan HTTP keluar.

Saya sarankan Anda untuk menginstal sesuatu seperti plugin Core Control WordPress, yang memungkinkan Anda untuk men-debug semua transport HTTP yang ada. Sangat mungkin bahwa sementara satu transportasi tidak berfungsi, yang lain mungkin baik-baik saja. Plugin ini memungkinkan Anda untuk menonaktifkan yang rusak dan menguji HTTP API dengan transport baru.

Jika ternyata memang tidak ada transportasi yang berfungsi, Anda harus menghubungi penyedia hosting Anda untuk setidaknya menginstal sesuatu seperti cURL di server sehingga Anda dapat membuat permintaan HTTP dalam PHP.

swissspidy
sumber
0

Saran tentang pesan kesalahan ini cukup bervariasi dan tampaknya tidak ada yang memberikan jawaban yang komprehensif (Lihat beberapa blog , jawaban yang sama dan di sini dan di sini di SO). Semoga ini adalah cara yang lebih formal untuk menyelesaikan masalah.

Saya menganggap hanya WordPress pada PHP yang dilayani melalui Apache (saya tidak dapat mengomentari NginX saat ini karena saya belum mencobanya dengan PHP, saya juga tidak dapat mengomentari kerangka kerja lain). Jawabannya mungkin menunjukkan bias ringan terhadap Windows 10 dengan Apache 2.4.37 yang dibangun sendiri, threaded safe safe PHP 7.2 dan WordPress 4.2.X.

Latar Belakang

PHP dan cURL menjelaskan, lebih baik orang dapat menambahkan, bahwa di bawah kap WordPress mengandalkan Requests, bungkus di sekitar cURLdan fSocketsperpustakaan. Requestslebih suka cURLperpustakaan jika tersedia tetapi seharusnya akan kembali ke fSocketsperpustakaan untuk mengunduh Plugin / Tema / dll. Kesalahan "No transports" mengindikasikan bahwa tidak ada perpustakaan yang dikonfigurasi dengan benar dalam Apache atau PHP. Mungkin juga firewall yang mengganggu proses juga.

Memeriksa

Uji konfigurasi pengaturan Apache dan PHP dan memuat skrip PHPinfo standar dari browser Anda. Ini harus memiliki bagian terpisah yang berhak cURLentri yang menunjukkan berbagai informasi. Jika tidak, siapkan dan muat skrip berikut untuk diperiksa.

<?php
echo 'Curl: ', function_exists('curl_init') ? 'Enabled' : 'Disabled';
?>

Saya tidak tahu bagaimana cara menguji fScokets.

ikal

Untuk memastikan ketersediaan cURLtampaknya diperlukan untuk mengaktifkannya di dalam php.ini.

  • Pastikan bahwa menunjuk extentions_dirdengan benar ke folder ekstensi tersebut

    extentions_dir="ext"

    (Atau extentions_dir="D:PATH/TO/php/ext"sering disarankan)

  • Pastikan cURLekstensi telah diaktifkan

    extension=curl

    ( extentions=php_curl(.so|.dll)atau extentions="PATH/TO/php_curl(.so|.dll)"juga disarankan, mungkin untuk PHP <7.2)

  • Dari PHP tampaknya eay32,, ssh2dan ssleay32pustaka juga harus tersedia pada jalur yang (Dengan OpenSSL 1.1 eay32diubah namanya crypto-*dan ssleay32diganti namanya ssl-*). Setelah windows hack jelek adalah untuk menyalin perpustakaan ini dari folder root PHP ke folder system32atau wow64. Solusi yang lebih baik adalah memodifikasi variabel path yang menyertakan folder root PHP (Secara pribadi saya lebih suka path bersih yang saya konfigurasikan seperti yang diperlukan tetapi ini adalah PHP). Pada kotak * nix sepertinya hanya perlu menginstal php5-curlpaket untuk distro-distro tersebut.

    Catatan: Komentar pada halaman PHP menyarankan bahwa seseorang dapat dengan mudah menambahkan LoadFile "PATH/TO/lib(eay32|ssh2)|ssleay32.dll"entri ke yang httpd.conftetapi cURLtampaknya mencari perpustakaan ini di jalur yang; menolak saran. Orang-orang XAmpp / Wamp lolos dengan langkah ini karena mereka tampaknya membuang root mereka sendiri di jalur sistem yang.

Setelah selesai restart Apache. Jika Anda menggunakan monitor Apache, Anda harus benar-benar berhenti dan kemudian memulai Apache; ini mengatur lingkungan baru untuk menjalankan layanan (Menyimpan Anda me-restart).

fSockets

Saya tidak tahu apa yang diperlukan untuk menjalankan ini.

Carel
sumber