Maison >développement back-end >Problème PHP >Comment compiler NGINX et prendre en charge PHP

Comment compiler NGINX et prendre en charge PHP

PHPz
PHPzoriginal
2023-04-12 15:36:55584parcourir

NGINX est un serveur Web hautes performances, qui agit également comme un proxy inverse et un équilibreur de charge. Comparé à d'autres serveurs, NGINX consomme moins de ressources mémoire et maintient la charge du système à un faible niveau. Il a toujours été favorisé par de nombreuses personnes.

Bien que NGINX prenne en charge nativement la diffusion de contenu statique, il ne dispose pas d'interpréteur PHP intégré et nécessite une installation supplémentaire pour prendre en charge PHP.

Cet article vous montrera comment compiler NGINX avec le support de PHP.

Prérequis

Avant de commencer l'installation, assurez-vous que les packages gcc, make et zlib-devel sont installés sur votre système. Ces packages peuvent être installés via la commande suivante :

$ sudo yum install gcc make zlib-devel

Télécharger et décompresser

Tout d'abord, vous devez télécharger le code source NGINX. Vous pouvez télécharger la dernière version sur le site officiel.

$ wget https://nginx.org/download/nginx-1.19.2.tar.gz

Décompressez le fichier téléchargé :

$ tar -zxvf nginx-1.19.2.tar.gz

Entrez le répertoire de décompression :

$ cd nginx-1.19.2

Compilez et installez

Pour compiler NGINX et prendre en charge PHP, vous devez ajouter --with-http_stub_status_module et --with-http_realip_module paramètre. --with-http_stub_status_module--with-http_realip_module参数。

以下是编译命令:

$ ./configure --prefix=/usr/local/nginx \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_ssl_module \
--add-module=/usr/local/src/ngx_cache_purge \
--add-module=/usr/local/src/headers-more-nginx-module \
--add-module=/usr/local/src/ngx_http_upstream_session_sticky_module \
--add-module=/usr/local/src/encrypted-session-nginx-module \
--add-module=/usr/local/src/nginx-module-vts

$ make && sudo make install

以上命令将导致NGINX与实时IP模块打包,并通过--with-http_ssl_module参数支持SSL。此外,还添加了一些第三方模块,例如ngx_cache_purge,headers-more-nginx-module,ngx_http_upstream_session_sticky_module,encrypted-session-nginx-module和nginx-module-vts等。

PHP支持

要在NGINX中支持PHP,请确保在安装PHP时已启用了FPM。FPM是FastCGI Process Manager的缩写,它使PHP与NGINX相互关联。

接下来,在NGINX的配置文件中添加以下内容以启用PHP支持。

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

SCRIPT_FILENAME

Voici les commandes de compilation :

rrreee

La commande ci-dessus entraînera le package de NGINX avec le module IP en temps réel et la prise en charge de SSL via le paramètre --with-http_ssl_module. De plus, certains modules tiers ont été ajoutés, tels que ngx_cache_purge, headers-more-nginx-module, ngx_http_upstream_session_sticky_module, approved-session-nginx-module et nginx-module-vts, etc.

Support PHP

Pour prendre en charge PHP dans NGINX, assurez-vous que FPM est activé lors de l'installation de PHP. FPM est l'abréviation de FastCGI Process Manager, qui interconnecte PHP et NGINX. 🎜🎜Ensuite, ajoutez ce qui suit dans le fichier de configuration de NGINX pour activer la prise en charge de PHP. 🎜rrreee🎜Le paramètre SCRIPT_FILENAME spécifie le chemin d'accès au script PHP. 🎜🎜Conclusion🎜🎜 Vous pouvez désormais utiliser le module complémentaire hautes performances de NGINX pour PHP, une combinaison qui rendra vos applications Web plus rapides et plus évolutives. 🎜🎜Au cours de ce processus, vous avez appris à compiler NGINX pour prendre en charge PHP. L'ajout de PHP à NGINX peut faire passer les performances de votre application Web à un niveau supérieur. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn