Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Berechtigungen im PHP + Nginx-Projekt

Detaillierte Erläuterung der Berechtigungen im PHP + Nginx-Projekt

墨辰丷
墨辰丷Original
2018-05-22 11:31:531267Durchsuche

Dieser Artikel führt Sie hauptsächlich in die relevanten Informationen zu Berechtigungen im PHP + Nginx-Projekt ein. Der Artikel ist sehr detailliert und hat einen gewissen Referenz- und Lernwert für alle Freunde, die ihn unten lesen können.

nginx/php-fpm

Prozessberechtigungen

  • Master Der Prozessbenutzer ist der Benutzer, der

  • den untergeordneten Prozess

gestartet hat. 1. Der Benutzer von nginx ist der in nginx.conf

2. Der Benutzer von php-fpm ist der in php-fpm.conf konfigurierte Benutzer.


Beispiel: root ist derjenige, der nginx startet, und der konfigurierte Benutzer in Nginx ist Nginx, dann ist der Hauptprozess Root, der Unterprozess ist Nginx

Verarbeitungsmethode

Die folgenden Zugriffe erfolgen über Nginx-Sub- Prozess

Statische Dateien

  • Schritt: Wenn Nginx auf /index.html zugreift, greift Nginx direkt auf die entsprechende Datei zu und gibt den Inhalt an die Datei zurück anfragender Kunde.

  • Berechtigungsstatus: Derzeit benötigt nur Nginx Berechtigungen für die Datei index.html.


PHP-Skriptdatei

Schritte:


  • Nginx-Zugriff/ index.php: Damit Nginx die korrekten Skriptverarbeitungsergebnisse an den Client zurückgibt, muss es so konfiguriert werden, dass es Nginx.php mitteilt, dass es sich um eine nicht statische Datei handelt und vor dem Inhalt vom PHP-Skriptparser verarbeitet werden muss kann zurückgegeben werden.

  • Im Allgemeinen wird ein Konfigurationselement wie fastcgi_pass unix:/var/run/php5-fpm.sock; zur Nginx-Konfiguration hinzugefügt, um anzuzeigen, dass Nginx auf eine Zugriffsskriptdatei stößt. An wen müssen Sie sich wenden? Dann greifen Sie auf die Datei zu, um die Anfrage an php-fpm weiterzuleiten.

  • Auf die echte PHP-Skriptdatei greift PHP-FPM zu und das Ergebnis wird an Nginx zurückgegeben, und Nginx gibt das Ergebnis an den Client zurück.


Berechtigungen:


  • nginx muss über /var/run/php5-fpm.sock-Dateiberechtigungen verfügen;

  • php-fpm erfordert /index.php-Dateiberechtigung


Benutzerkonfigurationsspeicherort

Der Nginx-Benutzer wird in der ersten Zeile von nginx.conf auf user gesetzt.

php-fpm-Benutzer wird auf

  • listen.owner = xxx gesetzt ; Unix-Socket-Benutzer festlegen

  • Benutzer = xxx Prozessstartbenutzer festlegen


Hinweis: Die Dateinamen der beiden oben genannten Konfigurationsdateien unterscheiden sich geringfügig unter verschiedenen Betriebssystemen. Bitte treffen Sie Ihr eigenes Urteil basierend auf Ihren eigenen Installationsbedingungen.

nginx leitet Inhalte nicht nur in /var/run/php5-fpm.sock an php-fpm weiter, sondern auch in php-fpm.conf durch Konfiguration an xxx.xxx.xxx:9000 usw.

; The address on which to accept FastCGI requests.
; Valid syntaxes are:
; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on
;       a specific port;
; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
;       a specific port;
; 'port'     - to listen on a TCP socket to all IPv4 addresses on a
;       specific port;
; '[::]:port'   - to listen on a TCP socket to all addresses
;       (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = /var/run/php5-fpm.sock

Andere

Ein besonderer Punkt ist, dass Nginx im Allgemeinen mit dem Root-Benutzer gestartet wird ( Um Erhalten Sie Port 80-Berechtigungen. Wenn der lokale Entwicklungs-Nginx als normaler Benutzer neu gestartet wird, sind der Hauptprozess und der untergeordnete Prozess der aktuelle Benutzer und die Konfiguration in nginx.conf wird nicht mehr wirksam. Es ist nicht klar, warum .

Verwandte Empfehlungen:

So ändern Sie die Nginx-Konfiguration der Standardzugriffsdatei auf einer PHP-Website – Beispielanalyse

Detaillierte Erläuterung der Schritte zum dynamischen Zuschneiden von Bildern in PHP innerhalb von Nginx

Detaillierte Erläuterung der Schritte zur Erzielung einer Echtzeitausgabe mit PHP Nginx

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Berechtigungen im PHP + Nginx-Projekt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn