Ista PHP datoteka može koristiti proxy u terminalu i ići izravno kada je poslužuje PHP-FPM. Počnite usporedbom procesa koji je pokreću. Vaš terminal pokreće PHP sa svojim okruženjem ljuske; web poslužitelj šalje zahtjev radnicima koje je FPM već stvorio.

Pogledajte okruženje radnika

Konfiguracija FPM pool-a pruža clear_env i izričite unose env[NAME]. Kada je čišćenje okruženja omogućeno, izvoz varijable u vašoj prijavnoj ljusci ne stavlja je u radnika. Unosi pool-a mogu prenijeti odabrane varijable:

env[http_proxy] = http://203.0.113.10:8080
env[https_proxy] = http://203.0.113.10:8080

Primijenite promjene konfiguracije uobičajenim postupkom ponovnog učitavanja FPM-a u vašem uvođenju. Stavite vrijednosti u pool koji stvarno poslužuje aplikaciju. Drugi pool, servisni račun ili kontejner mogu objasniti zašto naizgled ispravno uređivanje nema učinka.

Prilikom otklanjanja pogrešaka na živom zahtjevu provjerite samo postoje li očekivane postavke. Javna dijagnostička stranica koja ispisuje potpune vrijednosti okruženja može otkriti vjerodajnice proxyja zajedno s nepovezanim tajnama.

Zatim provjerite PHP prijenos

libcurl ima dokumentirano rukovanje proxy okruženjem; izričita PHP cURL ručka također ima vlastite opcije. PHP-ov omotač HTTP toka ima zasebnu konfiguraciju konteksta. Davanje varijabli radniku ne čini da ih svaki PHP mrežni API troši.

To daje korisnu dvodijelnu provjeru: potvrdite što je radnik primio, zatim potvrdite kako odabrani HTTP klijent čita proxy postavke. Ako CLI i FPM primaju iste vrijednosti ali se ipak ponašaju različito, zatim usporedite opcije klijenta i pravila zaobilaženja. Ponovljeno uređivanje profila ljuske ne može riješiti razliku unutar HTTP klijenta radnika.

Povezani članci