ជម្រើស --preproxy របស់ curl ភ្ជាប់ទៅ proxy SOCKS មុនទៅដល់ proxy HTTP ឬ HTTPS។ វាគាំទ្រខ្សែសង្វាក់ជាក់លាក់នេះ មិនមែនបញ្ជី server proxy ណាមួយតាមចិត្តទេ។

ផ្លូវគឺ client → SOCKS endpoint → HTTP proxy → គោលដៅ។ ជំនួស endpoint ឧទាហរណ៍ទាំងពីរក្នុងបញ្ជា៖

curl --preproxy socks5h://203.0.113.10:1080 --proxy http://203.0.113.20:8080 --noproxy '' --connect-timeout 5 --max-time 20 --verbose https://example.com/

សេវា SOCKS ត្រូវអាចទៅដល់អាសយដ្ឋាន និង port របស់ HTTP proxy។ បន្ទាប់មក HTTP proxy ត្រូវទទួលសំណើទៅគោលដៅ។ បើ proxy ទីពីរប្រើឈ្មោះ host របៀប SOCKS ដំបូងកំណត់ថាឈ្មោះនោះត្រូវដោះស្រាយនៅឯណា។ Endpoint ជាលេខជៀសវាងការស្វែងរកនេះ។

រកជំហានដែលបរាជ័យ

ដំបូងបញ្ជាក់សំណើតាម endpoint នីមួយៗដាច់ដោយឡែក។ សម្រាប់ជំហាន HTTP ប្រើការសាកល្បង HTTP proxy ដែលមានដែនកំណត់ពេល។ ទោះទាំងពីរដំណើរការក៏ដោយ ផ្លូវរួមអាចបរាជ័យ ព្រោះ proxy ដំបូងមិនអាចទៅដល់ទីពីរ។

អាន trace លម្អិតតាមលំដាប់ការភ្ជាប់។ SOCKS បរាជ័យនៅពេលទៅដល់ proxy ទីពីរ កើតមុនការសម្រេចរបស់ HTTP proxy ថាទទួលឬបដិសេធ CONNECT ទៅគេហទំព័រ។ កត់ថា handshake មួយណាបរាជ័យ។

ពេលជំហានបន្ថែមមានប្រយោជន៍

ការរៀបចំនេះអាចមានប្រយោជន៍ ពេល HTTP proxy ដែលបានអនុញ្ញាតអាចចូលដល់តាមផ្លូវ SOCKS។ ប៉ុន្តែវាក៏បន្ថែមសេវា និងផ្លូវបណ្តាញមួយទៀត ដែលអាចបរាជ័យ ឬបន្ថែមការយឺតយ៉ាវ។ ការភ្ជាប់ endpoint ពីបញ្ជី proxy សាធារណៈជាខ្សែសង្វាក់ មិនធានាភាពទុកចិត្តបាន ឬអនាមិកភាពទេ ហើយនៅតែត្រូវទុកចិត្តភាគីដែលដោះស្រាយការភ្ជាប់។

--preproxy ត្រូវការ curl 7.52.0 ឬថ្មីជាងនេះ។ កម្មវិធីផ្សេងអាចមិនគាំទ្រការរៀបចំដូចគ្នាទេ។

អត្ថបទពាក់ព័ន្ធ