PHP se HTTP-proxy-konteks herkonfigureer nie 'n rou TCP-stroom nie
Onderskei PHP se HTTP-wrapper-proxy-opsies van die protokolwerk wat op 'n stream_socket_client-TCP-verbinding nodig is.
Die HTTP-konteks se proxy-opsie hoort by PHP se HTTP-stroomwrapper. 'n Rou TCP-verbinding wat deur stream_socket_client geskep word, word nie 'n HTTP-proxykliënt bloot omdat daardie opsie in 'n konteksobjek bestaan nie.
As die kode direk aan die bestemmingsadres koppel, open dit daardie TCP-roete. As dit eerder aan die proxy-adres koppel, moet die volgende grepe steeds die proxyprotokol implementeer.
Vir HTTP CONNECT beteken dit 'n geldige bestemmingsgasheer en -poort, enige vereiste proxyverifikasie, volledige ontleding van die antwoord en aanvaarding voordat die bestemmingsprotokol begin. 'n Enkele fread-oproep wat na 'n suksesfrase soek, is nie 'n volledige koppelaar nie. TCP kan 'n antwoord oor verskeie lesings verdeel of bykomende grepe terugstuur wat bewaar moet word.
Vir 'n HTTPS-bestemming moet TLS dan deur die gevestigde tonnel begin en die bestemmingsidentiteit verifieer. Die proxy-gasheernaam is nie die webwerf se sertifikaatidentiteit nie.
Gebruik 'n kliënt of koppelaar met gedokumenteerde ondersteuning vir die vereiste proxyprotokol wanneer die taak bloot is om 'n URL te haal. PHP cURL se HTTP- en SOCKS-instellings bied een ondersteunde pad om 'n URL te haal. 'n Rou stroom is nuttig wanneer die toepassing daardie laer-vlak protokolwerk besit; dit moet nie stilweg aannames van 'n onverwante HTTP-wrapper-voorbeeld oorneem nie.