PHP-ի HTTP վստահված սերվերի կոնտեքստը չի վերակազմավորում հում TCP հոսքը
Տարբերեք PHP-ի HTTP փաթաթանի վստահված սերվերի ընտրանքները stream_socket_client TCP կապի վրա անհրաժեշտ արձանագրային աշխատանքից։
HTTP կոնտեքստի վստահված սերվերի ընտրանքը պատկանում է PHP-ի HTTP հոսքի փաթաթանին։ stream_socket_client-ով ստեղծված հում TCP կապը չի դառնում HTTP վստահված սերվերի հաճախորդ միայն այն պատճառով, որ այդ ընտրանքը գոյություն ունի կոնտեքստի օբյեկտում։
Եթե կոդը ուղղակիորեն միանում է նպատակակետի հասցեին, այն բացում է այդ TCP ուղին։ Եթե փոխարենը միանում է վստահված սերվերի հասցեին, ապա հաջորդ բայթերը դեռ պետք է իրականացնեն վստահված սերվերի արձանագրությունը։
HTTP CONNECT-ի համար դա նշանակում է վավեր նպատակակետ հոսթ և պորտ, ցանկացած պահանջվող վստահված սերվերի նույնականացում, պատասխանի ամբողջական վերլուծություն և ընդունում նախքան նպատակակետի արձանագրության սկսվելը։ Հաջողության արտահայտություն փնտրող մեկ fread կանչը ամբողջական միակցիչ չէ։ TCP-ն կարող է պատասխանը բաժանել ընթերցումների միջև կամ վերադարձնել լրացուցիչ բայթեր, որոնք պետք է պահպանվեն։
HTTPS նպատակակետի համար TLS-ը պետք է սկսվի հաստատված թունելով և ստուգի նպատակակետի ինքնությունը։ Վստահված սերվերի հոսթի անունը կայքի սերտիֆիկատի ինքնությունը չէ։
Երբ խնդիրը պարզապես URL բերելն է, օգտագործեք հաճախորդ կամ միակցիչ, որն ունի փաստաթղթավորված աջակցություն պահանջվող վստահված սերվերի արձանագրությանը։ PHP cURL-ի HTTP և SOCKS կարգավորումները տալիս են URL բերելու մեկ աջակցվող ուղի։ Հում հոսքը օգտակար է, երբ հավելվածն ինքն է ստանձնում այդ ցածր մակարդակի արձանագրային աշխատանքը․ այն չպետք է լուռ ժառանգի ենթադրություններ անկապ HTTP փաթաթանի օրինակից։