Proxyinnstillingen i HTTP-konteksten tilhører HTTP-strømmeinnpakningen i PHP. En rå TCP-tilkobling som stream_socket_client oppretter, blir ikke en HTTP-proxyklient bare fordi innstillingen finnes i et kontekstobjekt.

Hvis koden kobler direkte til destinasjonsadressen, åpner den den TCP-ruten. Hvis den i stedet kobler til proxyadressen, må de neste bytene fortsatt implementere proxyprotokollen.

For HTTP CONNECT betyr det en gyldig destinasjonsvert og -port, enhver påkrevd proxyautentisering, full parsing av svaret og aksept før destinasjonsprotokollen begynner. Et enkelt fread-kall som leter etter en suksessfrase er ikke en komplett kobler. TCP kan dele et svar over flere lesinger eller returnere ekstra bytes som må bevares.

For en HTTPS-destinasjon må TLS deretter starte gjennom den etablerte tunnelen og verifisere destinasjonens identitet. Proxyvertenavnet er ikke nettstedets sertifikatidentitet.

Bruk en klient eller kobler med dokumentert støtte for den påkrevde proxyprotokollen når oppgaven bare er å hente en URL. HTTP- og SOCKS-innstillingene til PHP cURL gir én støttet vei for å hente en URL. En rå strøm er nyttig når applikasjonen selv eier det protokollarbeidet på lavere nivå; den bør ikke i stillhet arve antakelser fra et urelatert HTTP-innpakningseksempel.

Relaterte artikler