Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 10175|Απάντηση: 0

Το πρωτόκολλο nginx fastcgi_pass παρουσιάζεται και δοκιμάζεται εν συντομία

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 16/11/2021 10:16:20 μ.μ. | | | |
Το nginx γενικά στέλνει αιτήματα στη διαδικασία διαχείρισης Fastcgi για επεξεργασία, λαμβάνοντας ως παράδειγμα τον ιστότοπο PHP, το php-fpm είναι μια υλοποίηση του πρωτοκόλλου Fastcgi, ενός hypervisor που διαχειρίζεται το php-cgi. Εδώ είναι το διάγραμμα ροής:



Το CGI σημαίνει "Common Gateway Interface", ένα εργαλείο για διακομιστές HTTP για να "μιλούν" με προγράμματα στον υπολογιστή σας ή σε άλλα μηχανήματα και τα προγράμματά τους πρέπει να εκτελούνται σε διακομιστή ιστού.

Μειονεκτήματα του CGI: Όταν εισάγεται κάθε αίτημα, το CGI θα διαχωρίσει μια νέα διαδικασία και, στη συνέχεια, θα πάρει ως παράδειγμα την PHP, κάθε αίτημα καταναλώνει σημαντική ποσότητα μνήμης, έτσι ώστε όταν εκκινηθεί, θα είναι εντελώς GG.

Για την επίλυση αυτού του προβλήματος, δημιουργήθηκε το fastCgi.

Το FastCGI είναι σαν ένα μακρόβιο CGI, μπορεί να εκτελεστεί συνεχώς, αρκεί να είναι ενεργοποιημένο, δεν χρειάζεται χρόνος για να διακλαδωθεί κάθε φορά (αυτή είναι η πιο επικριτική λειτουργία fork-and-execute του CGI). Υποστηρίζει επίσης κατανεμημένους υπολογιστές, πράγμα που σημαίνει ότι τα προγράμματα FastCGI μπορούν να εκτελεστούν σε κεντρικούς υπολογιστές διαφορετικούς από τον διακομιστή ιστού και να δέχονται αιτήματα από άλλους διακομιστές ιστού.
Δοκιμή

Δημιουργήστε ένα νέο αρχείο php στον κατάλογο D:\dev_tools\nginx-1.20.0\html\php για να αποτρέψετε το nginx από το να αναφέρει ένα σφάλμα 404 όταν το αρχείο δεν μπορεί να βρεθεί, ως εξής:



Το fastcgi_pass Nginx διαμορφώνεται ως εξής:



Τα δεδομένα που μεταδίδονται από το nginx fastcgi_pass πρέπει να αναλυθούν σύμφωνα με το πρωτόκολλο FastCGIΕάν ενδιαφέρεστε, μπορείτε να πάτε για να μάθετε, χρησιμοποιώ το sokit εδώ για να ενεργοποιήσω μια ακρόαση TCP για απλή λήψη, δοκιμάστε να χρησιμοποιήσετε ένα πρόγραμμα περιήγησης για πρόσβαση:http://127.0.0.1:22229/itsvse.php, όπως φαίνεται στο παρακάτω σχήμα:



22:06:07 DAT ---> [TCP] 127.0.0.1:1032 <1136> ..................... B.... QUERY_STRING.. REQUEST_METHODGET.. CONTENT_TYPE.. CONTENT_LENGTH.. SCRIPT_NAME/itsvse.php.. REQUEST_URI/itsvse.php.. DOCUMENT_URI/itsvse.php». DOCUMENT_ROOTD:/dev_tools/nginx-1.20.0/html/php.. SERVER_PROTOCOLHTTP/1.1..REQUEST_SCHEMEhttp.. GATEWAY_INTERFACECGI/1.1..SERVER_SOFTWAREnginx/1.20.0..REMOTE_ADDR127.0.0.1.. REMOTE_PORT1025.. SERVER_ADDR127.0.0.1.. SERVER_PORT22229.. SERVER_NAME.. REDIRECT_STATUS200.. HTTP_HOST127.0.0.1:22229..HTTP_CONNECTIONkeep-ζωντανός.. HTTP_CACHE_CONTROLmax-age=0.@HTTP_SEC_CH_UA"Χρώμιο"; v="92", " Όχι Α; Μάρκα"; v="99", "Google Chrome"; v="92".. HTTP_SEC_CH_UA_MOBILE?0..HTTP_UPGRADE_INSECURE_REQUESTS1.sHTTP_USER_AGENTMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, όπως το Gecko) Chrome/92.0.4515.131 Safari/537.36.....HTTP_ACCEPTtext/html,application/xhtml+xml,application/xml; q=0.9,εικόνα/avif,εικόνα/webp,εικόνα/apng,*/*; q=0.8, εφαρμογή/υπογεγραμμένη ανταλλαγή; v=b3; q=0.9..HTTP_SEC_FETCH_SITEnone.. HTTP_SEC_FETCH_MODEnavigate.. HTTP_SEC_FETCH_USER?1..HTTP_SEC_FETCH_DESTdocument.. HTTP_ACCEPT_ENCODINGgzip, ξεφουσκώνω, br.. HTTP_ACCEPT_LANGUAGEzh-CN,zh; q=0,9,en; q=0,8......................
(Τέλος)




Προηγούμενος:Εγκαταστήστε το curl με βάση το Debian (εικόνα docker).
Επόμενος:E45: 'readonly' option is set (add ! to override)
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com