R-proxydiagnostik: libcurl-version, TLS-backend og protokoller
Undersøg version, TLS-implementering og protokolattributter for Rs linkede libcurl separat fra en ekstern curl-kørbar fil.
Den R, der er installeret i et Conda-miljø, kan bruge en anden libcurl-build end curl-kørbarfilen i terminalen. Spørg den R-session, der fejler, hvilket bibliotek den faktisk har:
info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')
Tegnværdien angiver versionen af den linkede libcurl. Dens ssl_version-attribut identificerer TLS-implementeringen, mens protocols oplister de destinationsprotokoller, som biblioteket understøtter. De beskriver Rs indbyggede libcurl-vej, ikke en shell-kommando ved navn curl.
Afstem rapporten med downloadmetoden
download.file med method='libcurl' bruger dette bibliotek. method='curl' starter den eksterne kørbare fil. Det aktuelle automatiske HTTP(S)-valg bruger libcurl, og en download.file.method-indstilling med værdien NULL kan lade denne standard stå.
Kør undersøgelsen i det faktiske miljø, som jobbet eller IDE'en vælger. En anden R-installation kan rapportere en anden version eller TLS-backend, selv når dens scripts ser identiske ud.
En oplistet https-protokol betyder, at HTTPS-destinationer understøttes. Det beviser ikke, at en bestemt proxylytter accepterer TLS. En almindelig HTTP-proxy til et HTTPS-download har stadig en http://-proxy-URL.
Gem biblioteksrapporten sammen med den valgte metode og forbindelsesfejlen. Certifikatfejl, et ikke-understøttet proxyskema og en afvist lytter er fortsat forskellige fund; et versionsnummer alene er ikke deres diagnose.