Utilizzare un proxy per far “navigare” script PHP

Il titolo è abbastanza emblematico, lo so ma è difficile racchiudere tutto in poche parole.

Cerchiamo di fare chiarezza.
Lo scenario è il seguente: Un server web in una rete interna che può raggiungere l’esterno solo tramite un proxy. Impostando il proxy per gli utenti di sistema (come indicato negli aritcoli riportati tra le note di seguito), non sarà comunque possibile la connessione degli script PHP all’esterno, operazione che potrebbe essere necessaria, ad esempio, per installare un plugin o altro.
In questo caso sarà necessario indicare il proxy anche tra le variabili d’ambiente di apache. Basterà inserire nel file /etc/apache2/envvars la seguente direttiva:
export http_proxy=http://user:pass@IP:port
export https_proxy=http://user:pass@IP:port
export no_proxy=10.110.120.14,host_da_escludere

Nel caso PHP sia usato come FPM, bisognerà inserire delle direttive anche nel file del pool relativo al sito, es in /etc/php/7.0/fpm/pool.d/nomesito.conf:
env[http_proxy] = http://user:pass@IP:port
env[https_proxy] = http://user:pass@IP:port
env[no_proxy] = 10.110.120.14,host_da_escludere

dove ovviamente:
user: l’username per accedere al server proxy
pass: la password per accedere al server proxy
IP: l’IP del server proxy
port: la porta usata dal server proxy

Infine riavviare apache e php-fpm. Ora gli script PHP che tramite curl tenteranno la connessione all’esterno, funzioneranno correttamente.

Nota: consiglio anche i precedenti post relativi a Connettersi con linux tramite proxy, Linux: Installare un proxy http semplice e veloce.

enjoy!

Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂



Taggato su: , , ,

Commenta