Το ίδιο αρχείο PHP μπορεί να χρησιμοποιεί διακομιστή μεσολάβησης σε ένα τερματικό και να συνδέεται απευθείας όταν το σερβίρει το PHP-FPM. Ξεκινήστε συγκρίνοντας τις διεργασίες που το εκτελούν. Το τερματικό σας εκκινεί την PHP με το περιβάλλον του κελύφους του· ο διακομιστής ιστού στέλνει ένα αίτημα σε εργάτες που έχει ήδη δημιουργήσει το FPM.

Εξετάστε το περιβάλλον του εργάτη

Η ρύθμιση της δεξαμενής FPM παρέχει clear_env και ρητές καταχωρίσεις env[NAME]. Με ενεργοποιημένο τον καθαρισμό περιβάλλοντος, η εξαγωγή μιας μεταβλητής στο κέλυφος σύνδεσής σας δεν την τοποθετεί σε έναν εργάτη. Οι καταχωρίσεις της δεξαμενής μπορούν να μεταβιβάσουν επιλεγμένες μεταβλητές:

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

Εφαρμόστε τις αλλαγές διαμόρφωσης μέσω της συνήθους διαδικασίας επαναφόρτωσης FPM της ανάπτυξής σας. Τοποθετήστε τις τιμές στη δεξαμενή που εξυπηρετεί πραγματικά την εφαρμογή. Μια διαφορετική δεξαμενή, λογαριασμός υπηρεσίας ή κοντέινερ μπορεί να εξηγήσει γιατί μια φαινομενικά σωστή επεξεργασία δεν έχει αποτέλεσμα.

Όταν κάνετε αποσφαλμάτωση σε ζωντανό αίτημα, ελέγξτε μόνο αν υπάρχουν οι αναμενόμενες ρυθμίσεις. Μια δημόσια σελίδα διαγνωστικών που εκτυπώνει πλήρεις τιμές περιβάλλοντος μπορεί να εκθέσει διαπιστευτήρια διακομιστή μεσολάβησης μαζί με άλλα μυστικά.

Στη συνέχεια ελέγξτε το μεταφορικό μέσο της PHP

Το libcurl έχει τεκμηριωμένη διαχείριση περιβάλλοντος διακομιστή μεσολάβησης· μια ρητή λαβή cURL της PHP έχει επίσης τις δικές της επιλογές. Το περιτύλιγμα ροής HTTP της PHP έχει ξεχωριστή διαμόρφωση περιβάλλοντος. Η παροχή μεταβλητών σε έναν εργάτη δεν κάνει κάθε API δικτύου της PHP να τις καταναλώνει.

Αυτό δίνει ένα χρήσιμο έλεγχο δύο μερών: επιβεβαιώστε τι έλαβε ο εργάτης και μετά επιβεβαιώστε πώς ο επιλεγμένος πελάτης HTTP διαβάζει τις ρυθμίσεις διακομιστή μεσολάβησης. Αν το CLI και το FPM λαμβάνουν τις ίδιες τιμές αλλά συμπεριφέρονται διαφορετικά, συγκρίνετε στη συνέχεια τις επιλογές του πελάτη και τους κανόνες παράκαμψης. Η επανειλημμένη επεξεργασία του προφίλ του κελύφους δεν μπορεί να λύσει μια διαφορά μέσα στον πελάτη HTTP του εργάτη.

Σχετικά άρθρα