R tarpinio serverio diagnostika: libcurl versija, TLS posistemis ir protokolai
Patikrinkite su R susietos libcurl versiją, TLS įgyvendinimą ir protokolų atributus atskirai nuo išorinio curl vykdomojo failo.
Conda aplinkoje įdiegta R gali naudoti kitokį libcurl rinkinį nei terminalo curl vykdomasis failas. Paklauskite nepavykstančios R sesijos, kurią biblioteką ji iš tikrųjų turi:
info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')
Simbolių reikšmė praneša susietos libcurl versiją. Jos atributas ssl_version nustato TLS įgyvendinimą, o protocols išvardija tikslinius protokolus, kuriuos palaiko ta biblioteka. Jie aprašo įmontuotą R libcurl kelią, o ne shell komandą pavadinimu curl.
Suderinkite ataskaitą su atsisiuntimo metodu
download.file su method='libcurl' naudoja šią biblioteką. method='curl' paleidžia išorinį vykdomąjį failą. Dabartinis automatinis HTTP(S) pasirinkimas naudoja libcurl, o parinktis download.file.method su reikšme NULL gali palikti tą numatytąją nuostatą.
Atlikite patikrą toje tikroje aplinkoje, kurią pasirenka užduotis arba IDE. Kita R instalacija gali pranešti apie kitą versiją ar TLS posistemį, net kai jos scenarijai atrodo identiški.
Sąraše nurodytas https protokolas reiškia, kad HTTPS paskirties vietos palaikomos. Tai neįrodo, kad konkretus tarpinio serverio klausytojas priima TLS. Įprastas HTTP tarpinis serveris HTTPS atsisiuntimui vis tiek turi tarpinio serverio URL su http://.
Saugokite bibliotekos ataskaitą kartu su pasirinktu metodu ir ryšio klaida. Sertifikato gedimas, nepalaikoma tarpinio serverio schema ir atmestas klausytojas išlieka skirtingi radiniai; vien versijos numeris nėra jų diagnozė.