ਇੱਕੋ 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 ਕਲਾਇੰਟ ਅੰਦਰਲਾ ਫ਼ਰਕ ਹੱਲ ਨਹੀਂ ਹੁੰਦਾ।

ਸੰਬੰਧਿਤ ਲੇਖ