Неге curl қашықтағы URL орнына localhost-қа қосылады
VPN-ді кінәламас бұрын мұраланған проксиді, әдепкі curlrc файлын және нақты мақсатты ажыратыңыз. Үш бақыланатын іске қосу TLS тексеруін қосулы ұстайды.
Егер curl сіз берген URL-ге қарамастан localhost-қа қосылуға тырысса, VPN бастау үшін дұрыс емес орын. Жергілікті HTTP немесе SOCKS проксисі көзделген бірінші қосылым болуы мүмкін, тіпті қажет қызмет мүлде басқа жерде болса да. Егер ол прокси енді жұмыс істемесе, localhost әрекеті curl мақсатқа жетпей тұрып сәтсіз аяқталады. Проксидің жауабы да мақсаттың жауап бергенінің дәлелі емес.
Бұл қадамдарды ретімен орындаңыз және бірінші қосылым әрекетін өзгертетін бірінші қадамда тоқтаңыз.
Алдымен curl-дың өзінің прокси ережелерін оқыңыз
curl протоколға тән прокси айнымалыларын оқиды, мысалы https_proxy және HTTPS_PROXY, сондай-ақ протоколға тән мән қолданылмаған кезде ALL_PROXY. curl-ды шын мәнінде іске қосатын қабықтың, қызметтің немесе тапсырманың ортасын тексеріңіз, ағымдағы терминалдікін емес. CI тапсырмасы, systemd бірлігі және интерактивті қабық үш түрлі жиынды мұралауы мүмкін. Көрінетін қабықтан болжау — осы тексерудің тұтас түстен кейінгі уақытты жоғалтуының себебі.
Бір ерекшелікті есте ұстаған жөн. curl http_proxy тек кіші әріптермен қабылдайды; бас әріппен жазылған HTTP_PROXY еленбейді, сондықтан бір орта басқа құралдарда басқаша әрекет етеді.
Мәндерді құпия түрде оқыңыз, өйткені прокси URL-і жиі тіркелгі деректерін тасымалдайды.
Содан кейін curl-дың әдепкі конфигурация файлында прокси немесе қосылымды қайта анықтауларды тексеріп, шын мәнінде қай орындалатын файлды іске қосып жатқаныңызды растаңыз. Қабық бүркеншімі, функция немесе қаптаушы скрипт сіздің пәрмен жолыңызда ешқашан көрінбейтін опцияларды қосуы мүмкін.
TLS қосулы күйде үш шақыруды салыстырыңыз
Үш іске қосу үшін де бір бекітілген диагностикалық мақсатты және сол бинарлық файлды пайдаланыңыз.
curl -v https://service.corp.example/status
curl -q -v https://service.corp.example/status
curl -q --proxy '' -v https://service.corp.example/status
-q әдепкі curlrc файлын басады және жұмыс істеуі үшін жолдың бірінші параметрі болуы керек. Ол прокси ортасының айнымалыларын жоймайды, бұл дәл соны күтетіндерді таңғалдырады. Үшінші нұсқа бос --proxy мәнін қосады және орта сұраған проксиді тек сол шақыру үшін қайта анықтайды. Әр шығыстағы бірінші қосылым әрекетін салыстырыңыз, соңғы күй кодын емес.
Толық шығыс тақырыпшаларды, токендерді және прокси тіркелгі деректерін аша алады, сондықтан оны жергілікті сақтап, бөліспес бұрын үзінділерді оқыңыз.
Әр нәтиже нені жоққа шығарады
Егер әдепкі конфигурацияны өткізіп жіберу қосылымды өзгертсе, қайнар көзі — конфигурация файлы. Егер мұраланған проксиді анық өшіру оны өзгертсе, қайнар көзі — орта айнымалысы. Егер екеуі де оны өзгертпесе және localhost әлі көрінсе, пәрмен жолындағы қосылымды қайта анықтауларды, хост атауларын шешуді және таңдалған орындалатын файлды қараңыз. Олардың әрқайсысының түзетуі бөлек және олардың ешқайсысы маршруттау өзгерісі емес.
Рұқсат етілген кітапханаларды жүктеу немесе енгізілген желілік мінез-құлық — кейінгі қабат, ал жалғыз орта айнымалысы оның дәлелі емес.
Прокси шешімін VPN-нен бөлек ұстаңыз
curl тікелей мақсатты таңдағаннан кейін операциялық жүйе сол қосылымды әлі де маршруттайды. Қолданба проксиін өшіру VPN маршрутын немесе оның сүзгілеу саясатын өшірмейді. Тікелей қатынас салыстыруларын тек сол диагностика рұқсат етілген жерде жасаңыз. Саясатты үнсіз айналып өтетін тест жарамды нәтиже емес, ол оқиға.
Егер жергілікті прокси қажет болса, оның параметрлерін жоюдың орнына қызметі мен мекенжайын қалпына келтіріңіз.
Егер тікелей қатынас тек таңдалған жеке мақсаттарға қажет болса, тар бекітілген ерекшелік қосыңыз және қалғанының бәрі үшін проксиді сақтаңыз. Таңдалған жолдың бірінші қатесін сақтаңыз, өйткені localhost-тың бас тартуы, прокси CONNECT-тің қабылдамауы, сертификат ақауы және авторизация қатесі төрт түрлі кезеңді көрсетеді.