Diagnostik proksi R: versi libcurl, backend TLS, dan protokol
Periksa versi, implementasi TLS, dan atribut protokol libcurl yang ditautkan ke R secara terpisah dari berkas eksekutabel curl eksternal.
R yang dipasang di lingkungan Conda dapat menggunakan build libcurl berbeda dari berkas eksekutabel curl di terminal. Tanyakan kepada sesi R yang gagal pustaka mana yang sebenarnya dimilikinya:
info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')
Nilai karakter melaporkan versi libcurl yang ditautkan. Atribut ssl_version-nya mengidentifikasi implementasi TLS, sedangkan protocols mencantumkan protokol tujuan yang didukung pustaka tersebut. Semuanya menjelaskan jalur libcurl bawaan R, bukan perintah shell bernama curl.
Cocokkan laporan dengan metode unduhan
download.file dengan method='libcurl' menggunakan pustaka ini. method='curl' menjalankan berkas eksekutabel eksternal. Pemilihan HTTP(S) otomatis saat ini menggunakan libcurl, dan opsi download.file.method bernilai NULL dapat membiarkan bawaan itu berlaku.
Jalankan pemeriksaan di lingkungan sebenarnya yang dipilih oleh tugas atau IDE. Pemasangan R lain dapat melaporkan versi atau backend TLS berbeda meskipun skripnya tampak sama.
Protokol https yang tercantum berarti tujuan HTTPS didukung. Itu tidak membuktikan bahwa pendengar proksi tertentu menerima TLS. Proksi HTTP biasa untuk unduhan HTTPS tetap memiliki URL proksi http://.
Simpan laporan pustaka bersama metode yang dipilih dan kesalahan koneksi. Kegagalan sertifikat, skema proksi yang tidak didukung, dan pendengar yang ditolak tetap merupakan temuan berbeda; nomor versi saja bukan diagnosisnya.