HTTP проксиді curl арқылы тексеріңіз
Құрылғының жалпы проксиін өзгертпей, уақыты шектелген curl сынағымен прокси байланысын, HTTPS туннелін, жауап күйін және айналып өту ережелерін тексеріңіз.
127.0.0.1:8080 орнына өз қызметіңізден немесе HTTP прокси тізімінен соңғы нүктені қойып, мұны зиянсыз HTTPS нысанасына іске қосыңыз:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/Loopback мекенжайы өз компьютеріңіздегі тыңдаушыны білдіреді. Пәрмен оны нақты таңдайды, осы шақыру үшін curl-дің айналып өту тізімін тазалайды және қосылым орнатуға бес секунд, жалпы он бес секунд береді. Браузер мен жүйенің прокси баптауларын өзгертпейді.
Қабық curl атауын басқа бағдарламаның бүркеншік аты етсе, curl-дің нақты орындалатын файлын пайдаланыңыз; curl --version құрастырылымды анықтайды. Тыңдаушының өзі TLS талап етсе, оның құжатталған прокси URL схемасын қолданыңыз.
Бір сәттілік белгісін емес, төрт нәтижені оқыңыз
- Таңдалған проксиге қосылды: мекенжай мен порт қолжетімді.
- CONNECT қабылданды: прокси HTTPS нысанасына туннель ашты.
- Нысананың сертификаты тексерілді: TLS күтілген сенім тексерулерімен аяқталды.
- Нысананың жауабы алынды: қолданбаңызға керек нәтиже үшін күйі мен мазмұнын қараңыз.
Жұмыс істейтін туннельден кейін де нысана 403 немесе 429 қайтара алады. curl HTTP қате жауабын алған соң да сәтті аяқталуы мүмкін, сондықтан жауап күйін де, curl қате нәтижесін де жазыңыз. TCP байланысы немесе сәтті CONNECT қана жеткіліксіз.
Қайталама салыстыруға арналған ықшам нәтиже
Unix тәрізді қабықта жауап денесін тастап, туннель күйін, нысана күйін, байланыстың қарсы жағын және өткен уақытты шығарыңыз:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --silent --show-error --output /dev/null --write-out 'http=%{http_code} connect=%{http_connect} peer=%{remote_ip} total=%{time_total}\n' https://example.com/http_connect туннель жауабын, http_code соңғы HTTP жауабын сипаттайды. remote_ip — curl байланысының қарсы жағы, проксидің шығу мекенжайын тәуелсіз өлшеу емес. Басқа жүйелерде /dev/null мәнін ауыстырыңыз немесе жауап денесін сақтаңыз.
Сынақ сәтсіз болса, қосылым орнатудың немесе тасымалдаудың сәтсіз қадамын табыңыз және сол бағытқа рұқсат етілген жерде бір нысананы тікелей қатынаспен салыстырыңыз:
curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/--noproxy '*' проксилерді айналып өтеді. Екі бағытта да сертификатты тексерудің сәтсіздігі ортақ сенім мәселесіне меңзейді; тікелей қатынас сәтті болып, CONNECT қабылданбаса, бұл прокси аутентификациясына не саясатына меңзейді. Егжей-тегжейлі шығысты бөліспес бұрын тексеріңіз, өйткені онда сәйкестендіретін ақпарат болуы мүмкін.
Нәтижемен бірге соңғы нүктені, нысананы және уақыт белгісін сақтаңыз. Бұл сол сұрауда ненің жұмыс істегенін белгілейді; болашақ қолжетімділік, құпиялылық және жүктемедегі өнімділік бөлек дәлелді қажет етеді.