Heim >Backend-Entwicklung >PHP-Problem >So stellen Sie ein PHP-Projekt unter Nginx bereit

So stellen Sie ein PHP-Projekt unter Nginx bereit

藏色散人
藏色散人Original
2021-09-24 09:38:2118766Durchsuche

So stellen Sie PHP-Projekte unter Nginx bereit: 1. Installieren Sie Nginx und PHP-FPM. 2. Suchen Sie die Konfigurationsdatei des Nginx-Servers. 3. Geben Sie den Bereitstellungsort des PHP-Projekts an Gehen Sie einfach zu „Sites aktiviert“.

So stellen Sie ein PHP-Projekt unter Nginx bereit

Die Betriebsumgebung dieses Artikels: Linux5.9.8-System, Nginx-Version 1.9, Dell G3-Computer.

Wie stelle ich ein PHP-Projekt unter Nginx bereit?

PHP-Projekte auf dem Nginx-Server bereitstellen

Nginx selbst kann keine PHP-Seiten verarbeiten. Wenn eine Anfrage eingeht, wird sie über einen PHP-Interpreter weitergeleitet Reverse-Proxy zur Verarbeitung und Rückgabe der Ergebnisse an den Client. Daher müssen nginx und php-fpm oder ein anderer PHP-Interpreter auf dem Server installiert sein.

Suchen Sie nach der Installation von Nginx und PHP-FPM die Konfigurationsdatei des Nginx-Servers.

[root@test24266conf]# ps -ef | grep nginx.conf
root     31441    1  0  2018 ?       00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c/usr/local/nginx/conf/nginx.conf

Geben Sie in dieser Datei den Bereitstellungsort des PHP-Projekts an, d.

Viele Distributionsversionen verfügen nicht über ein Serverfeld in nginx.conf. Dies dient der Vereinfachung der Verwaltung. In der vorkompilierten Version einiger Distributionen stehen am Ende zwei Sätze: „conf.d/*.conf“. http-Abschnitt in nginx.conf. oder nur ein include

sites-enabled/*.conf Legen Sie die PHP-Projektdatei im Pfad /var/www/pointriskapi/hosts ab. Beispielsweise muss

[root@test24266conf]# ll sites-enabled/
-rw-r--r--1 root root 603 103 2017 captcha443.conf
-rw-r--r--1 root root 287 9 1 2017 commrisk.conf
-rw-r--r--1 root root 194 129 2016 imagerotate.conf
-rw-r--r--1 root root 402 9 2 2016 msgqapi.conf
-rw-r--r--1 root root 295 102 2017 pointriskapi.conf
-rw-r--r--1 root root 290 6 2 2017 risktrade.conf
-rw-r--r--1 root root 309 814 2017 rotateapi.conf
-rw-r--r--1 root root 313 100 2016 watchdog.conf
[root@test24266conf]#
       这样每个.conf文件就可以对应一个虚拟主机,查看某个配置文件,如
[root@test24266conf]# cat sites-enabled/pointriskapi.conf
server{
    listen     8013;
    server_name     point.risk.api;
    index index.php;               #默认访问的文件
    root       /var/www/pointriskapi/hosts;
    access_log on;

Nginx und PHP-FPM im Allgemeinen nicht neu starten. Jetzt können Sie auf dem Client auf http://ip:8013/risk_point.php zugreifen.

Wie leitet Nginx die Anfrage über den Reverse-Proxy an den PHP-Interpreter weiter? Wir haben festgestellt, dass es im Serverfeld einen Absatz

rrree

gibt. Dieser Absatz gibt an, wer die .php-Datei verwaltet. Wir überprüfen die Datei factcgi.conf im selben Verzeichnis wie nginx.conf, z. B.

#当请求网站下php文件的时候,反向代理到php-fpm
    location ~ .*\.php?$ {
       include fastcgi.conf;
    }
 
   location = /favicon.ico {
        log_not_found off;
        access_log off;
    }
 
}
[root@test24266conf]#

Fastcgi_pass gibt die IP-Adresse und den Port an, auf denen der Fastcgi-Prozess lauscht, d. h. nginx leitet die Anfrage an diesen Socket weiter. Daher müssen wir denselben Socket in der PHP-FPM-Konfigurationsdatei angeben. Starten Sie die PHP-FPM-Überwachung und überprüfen Sie

[root@test24266hosts]# ll
 
 -rw-r--r-- 1 apache apache 339 102 2017risk_point.php
[root@test24266hosts]# pwd
/var/www/pointriskapi/hosts

Zusammenfassend sieht der vollständige Anforderungs- und Antwortprozess im Nginx- und PHP-FPM-Modus wie folgt aus:

1 Der Client fordert eine .php-Datei auf dem Server an

2 Es wurde festgestellt, dass dynamische Ressourcen an das angegebene Stammverzeichnis weitergeleitet werden müssen

3. Laden Sie das Fast-CGI-Modul von Nginx

4 -fpm empfängt die Anfrage. Aktivieren Sie den Worker-Prozess, um die Anfrage zu verarbeiten.

6 Nachdem PHP-FPM die Anfrage verarbeitet hat, senden Sie sie an Nginx zurück PHP-Video-Tutorial

"

Das obige ist der detaillierte Inhalt vonSo stellen Sie ein PHP-Projekt unter Nginx bereit. 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