మీ టెర్మినల్లో పనిచేసే ప్రాక్సీని PHP-FPM ఎందుకు కోల్పోతుంది
ప్రాక్సీ కాన్ఫిగరేషన్ను PHP-FPM వర్కర్లలోకి అనుసరించి, వారి వాతావరణాన్ని PHP స్ట్రీమ్ సందర్భాల నుండి వేరు చేయండి.
ఒకే PHP ఫైల్ టెర్మినల్లో ప్రాక్సీని ఉపయోగించి, PHP-FPM సేవ చేసినప్పుడు నేరుగా వెళ్లగలదు. దాన్ని నడిపే ప్రక్రియలను పోల్చి ప్రారంభించండి. మీ టెర్మినల్ PHPని shell వాతావరణంతో ప్రారంభిస్తుంది; వెబ్ సర్వర్ FPM ఇప్పటికే సృష్టించిన వర్కర్లకు అభ్యర్థనను పంపుతుంది.
వర్కర్ వాతావరణాన్ని చూడండి
FPM పూల్ కాన్ఫిగరేషన్ clear_env మరియు స్పష్టమైన env[NAME] నమోదులను అందిస్తుంది. వాతావరణ శుభ్రత ప్రారంభించి ఉన్నప్పుడు, లాగిన్ shellలో వేరియబుల్ను ఎగుమతి చేయడం దాన్ని వర్కర్లో ఉంచదు. పూల్ నమోదులు ఎంచుకున్న వేరియబుల్లను పంపగలవు:
env[http_proxy] = http://203.0.113.10:8080
env[https_proxy] = http://203.0.113.10:8080
కాన్ఫిగరేషన్ మార్పులను మీ డిప్లాయ్మెంట్ యొక్క సాధారణ FPM రీలోడ్ విధానం ద్వారా వర్తించండి. విలువలను నిజంగా అప్లికేషన్కు సేవ చేసే పూల్లో ఉంచండి. వేరే పూల్, సేవా ఖాతా లేదా కంటైనర్ సరైనదిగా కనిపించే సవరణకు ఎందుకు ఫలితం లేదో వివరించగలదు.
ప్రత్యక్ష అభ్యర్థనను డీబగ్ చేస్తున్నప్పుడు ఆశించిన సెట్టింగ్లు ఉన్నాయా అని మాత్రమే తనిఖీ చేయండి. పూర్తి వాతావరణ విలువలను ముద్రించే పబ్లిక్ డయాగ్నస్టిక్ పేజీ ప్రాక్సీ ఆధారాలతో పాటు సంబంధం లేని రహస్యాలను బహిర్గతం చేయగలదు.
తర్వాత PHP రవాణాను తనిఖీ చేయండి
libcurlకు డాక్యుమెంట్ చేయబడిన ప్రాక్సీ వాతావరణ నిర్వహణ ఉంది; స్పష్టమైన PHP cURL హ్యాండిల్కు కూడా దాని స్వంత ఎంపికలు ఉన్నాయి. PHP యొక్క HTTP స్ట్రీమ్ ర్యాపర్కు ప్రత్యేక కాంటెక్స్ట్ కాన్ఫిగరేషన్ ఉంది. వర్కర్కు వేరియబుల్లను అందించడం ప్రతి PHP నెట్వర్క్ API వాటిని వినియోగించేలా చేయదు.
ఇది ఉపయోగకరమైన రెండు-భాగాల తనిఖీని ఇస్తుంది: వర్కర్ ఏమి పొందిందో నిర్ధారించండి, ఆపై ఎంచుకున్న HTTP క్లయింట్ ప్రాక్సీ సెట్టింగ్లను ఎలా చదువుతుందో నిర్ధారించండి. CLI మరియు FPM ఒకే విలువలను పొందినా భిన్నంగా ప్రవర్తిస్తే, తర్వాత క్లయింట్ ఎంపికలు మరియు బైపాస్ నియమాలను పోల్చండి. shell ప్రొఫైల్ను పదేపదే సవరించడం వర్కర్ HTTP క్లయింట్ లోపలి భేదాన్ని పరిష్కరించదు.