Maison développement back-end Problème PHP Comment installer et configurer PHP+Nginx sous Linux

Comment installer et configurer PHP+Nginx sous Linux

Jul 13, 2020 pm 02:15 PM
linux nginx php Configuration de l'installation

Comment installer et configurer PHP+Nginx sur Linux : installez d'abord PHP ; puis installez Nginx ; puis Nginx et PHP terminent les demandes de données via le port 9000 de la machine locale et enfin terminez le test ;

Comment installer et configurer PHP+Nginx sous Linux

Comment installer et configurer PHP+Nginx sous Linux :

Installation de PHP

1. Installer php7.0

Téléchargement du logiciel # wget http://cn2.php.net/distributions/php-7.0.4.tar.gz

Vérifiez et installez les packages dépendants

[root@ser3 Desktop]# rpm -qa libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 curl-devel libxslt-devel openssl-devel    
[root@ser3 Desktop]# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxslt-devel openssl-devel    
[root@ser3 Desktop]# tar xf php-7.0.4.tar.gz    
[root@ser3 Desktop]# cd php-7.0.4    
[root@ser3 php-7.0.4]# ./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc  --with-curl  --with-freetype-dir  --with-gd  --with-gettext  --with-iconv-dir  --with-kerberos  --with-libdir=lib64  --with-libxml-dir  --with-mysqli  --with-openssl  --with-pcre-regex  --with-pdo-mysql  --with-pdo-sqlite  --with-pear  --with-png-dir  --with-xmlrpc  --with-xsl  --with-zlib --with-zlib-dir --with-mhash --with-mcrypt --with-openssl-dir --with-jpeg-dir --enable-gd-jis-conv  --enable-fpm  --enable-bcmath  --enable-libxml  --enable-inline-optimization  --enable-gd-native-ttf  --enable-mbregex  --enable-mbstring  --enable-opcache  --enable-pcntl  --enable-shmop  --enable-soap  --enable-sockets  --enable-sysvsem  --enable-xml  --enable-zip
[root@ser3 php-7.0.4]# make    
[root@ser3 php-7.0.4]# make  test    
[root@ser3 php-7.0.4]# make install

2. Définissez le fichier de configuration

[root@ser3 php-7.0.4]# cp php.ini-production /usr/local/php7/etc/php.ini

php.ini- le développement est adapté au développement et aux tests, tels que l'environnement de test local, php.ini-production a des paramètres de sécurité plus élevés, adaptés au fonctionnement du serveur en ligne en tant que produit. Généralement, modifiez php.ini-production en php.ini, qui est plus sécurisé et garantit que l'environnement de test (local) et l'environnement officiel (en ligne) sont cohérents

[root@ser3 php-7.0.4]# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
[root@ser3 php-7.0.4]# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf    
[root@ser3 php-7.0.4]# cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

3. Ajouter un service de démarrage.

[root@ser3 php-7.0.4]# chmod +x /etc/init.d/php-fpm    
[root@ser3 php-7.0.4]# chkconfig --add php-fpm

Notez que le fichier de configuration www.conf dans php7 configure le numéro de port et d'autres informations de phpfpm Si vous modifiez le numéro de port 9000 par défaut, vous devez le modifier ici, puis modifier le. Configuration de nginx

4. Démarrez le service php

[root@ser3 php-7.0.4]# /etc/init.d/php-fpm start
[root@ser3 php-7.0.4]# ps -ef | grep php-fpm

2. Installation de Nginx

1 .Téléchargement du logiciel :

wget http://nginx.org/download/nginx-1.6.2.tar.gz Utilisez directement la commande pour télécharger sur Linux

2. Installer les dépendances Package pcre et les logiciels dépendants

Avant d'installer nginx, assurez-vous d'avoir installé la # rpm -qa gcc openssl-devel pcre zlib-devel bibliothèque de logiciels
L'installation de la bibliothèque pcre consiste à permettre à Nginx de prendre en charge le module HTTP Rewriter. Si pcre ne dispose pas de ce package d'installation par défaut, vous devez le télécharger et l'installer manuellement.

3. Optimisez le package d'installation avant l'installation

(Optimisation du processus de compilation et d'installation) Réduisez la taille du fichier nginx compilé. par défaut En mode débogage, de nombreuses informations de suivi et d'ASSERT seront insérées. Une fois la compilation terminée, la page

[root@svr1 nginx-1.6.2]# vim auto/cc/gcc
# debug    
CFLAGS="$CFLAGS -g"
   注释或删除这两行,即可取消debug模式.
[root@svr1 nginx-1.6.2]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-openssl=/usr/local/openssl   
[root@svr1 nginx-1.6.2]# make && make install
[root@svr1 nginx-1.6.2]# ps -ef | grep nginx    
[root@svr1 nginx-1.6.2]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf   
[root@svr1 nginx-1.6.2]# curl -i 127.0.0.1    
......    
<body>    
<h1>Welcome to nginx!</h1>    
If you see this page, the nginx web server is successfully installed and    
......

test i montre qu'il n'y a aucun problème avec l'installation de nginx

3. Intégrer Nginx et PHP

Nginx lui-même ne traite pas les requêtes de pages Web dynamiques, et Nginx transfère les requêtes dynamiques vers le fichier de configuration Nginx

# vim /usr/local/nginx/conf/nginx.conf       //标的部分是我们后面要修改的
<. 🎜>

Comment installer et configurer PHP+Nginx sous Linux

En regardant l'image ci-dessus, Nginx sait déjà comment transmettre la requête à PHP Lorsque Nginx reçoit la requête

, il transmettra la requête à PHP via le port 9000. Supprimons simplement ces commentaires, comme le montre l'image ci-dessous *.php

Comment installer et configurer PHP+Nginx sous Linux

Comme le montre l'image ci-dessus, nous avons déjà vu que Nginx demandait PHP via le port 9000 de la machine. Transmis à PHP, et dans l'image ci-dessus, nous pouvons voir que PHP lui-même écoute les données du port 9000 de la machine locale, et Nginx et PHP complètent la demande de données via le port 9000 de la machine locale.

4. Tests

Nous avons défini le chemin de stockage du site Web PHP dans le fichier de configuration nginx. 🎜 >

Ensuite, nous créons une nouvelle page de test de page PHP dans ce répertoire. Le nom du fichier est test.php et le contenu est le suivant /usr/local/nginx/html

<?php 
     phpinfo(); 
?> 
关闭php
killall php-fpm
php重启
/usr/local/php7/sbin/php-fpm &
关闭nginx
/usr/local/nginx/sbin/nginx -s stop       //关闭服务器
重启nginx
/usr/local/nginx/sbin/nginx       开启服务器
Après avoir redémarré PHP et nginx, nous entrons

dans le navigateur et ce qui suit apparaît. L'interface est considérée comme une réussite

http://localhost/test.php

Comment installer et configurer PHP+Nginx sous LinuxRecommandations d'apprentissage associées :

Programmation PHP de l'entrée à la maîtrise

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 de ce site Web
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

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1543
276
Correction: la mise à jour Windows n'a pas réussi à installer Correction: la mise à jour Windows n'a pas réussi à installer Aug 08, 2025 pm 04:16 PM

RunThewindowsUpDateTroulesshooTervAyingSettings> Update & Security> TroubleshoottoAutomAticyFixComMonissues.2.ResetwindowsupDateComponentsBystoppingrelatedServices, RenamingtheSoftwaredSistributeandCatroot2folders, TherestartingTheServicestoClelele

Comparez et contrastez les traits PHP, les classes abstraites et les interfaces avec les cas d'utilisation pratiques. Comparez et contrastez les traits PHP, les classes abstraites et les interfaces avec les cas d'utilisation pratiques. Aug 11, 2025 pm 11:17 PM

Utiliser une interfacestodefineContracts pour les classes liées, garantissant à ce que les implications spécifiques de la responsabilité; 2. ustractClassestoshareCommonLogicamongRelatedClasses whileenforcingInheritance; 3.UsetraTstoreUtyUtilityCodeAcrosses

Correction: Ethernet 'réseau non identifié' Correction: Ethernet 'réseau non identifié' Aug 12, 2025 pm 01:53 PM

RestartyourRouterAndComputerToresolvetemporaryGlithes.2.RunthenetWorkTrouleshooTerviATheSystemTraytomAticalMatterFixComMonissues.3.RenewtheipAddressusingcomandPomptSADMinistratorByrunningIpConfig / Release, Ipconfig / Renew, NetShwinsockReset, etnetSh

Linux comment activer et désactiver les services au démarrage Linux comment activer et désactiver les services au démarrage Aug 08, 2025 am 10:23 AM

Pour gérer le démarrage des services Linux, utilisez la commande SystemCTL. 1. Vérifiez l'état du service: SystemCtlStatus peut vérifier si le service est en cours d'exécution, activé ou désactivé. 2. Activer le start-up de service: SudosystemctLenable, comme SudosystemctLenablenginx. S'il est démarré en même temps, utilisez SudosystemCtLenable - Notginx. 3. Désactiver le start-up de service: SudosystemCTLDisable, tels que SudosystemCTLDisablecups. S'il est arrêté en même temps, utilisez SudosystemctlDisabl

Décrivez le modèle de conception de l'observateur et sa mise en œuvre dans PHP. Décrivez le modèle de conception de l'observateur et sa mise en œuvre dans PHP. Aug 15, 2025 pm 01:54 PM

TheObserverdesignpatternenablesautomaticnotificationofdependentobjectswhenasubject'sstatechanges.1)Itdefinesaone-to-manydependencybetweenobjects;2)Thesubjectmaintainsalistofobserversandnotifiesthemviaacommoninterface;3)Observersimplementanupdatemetho

192.168.10.1 Portail de connexion (Page de gestion de la période / ASUS) 192.168.10.1 Portail de connexion (Page de gestion de la période / ASUS) Aug 12, 2025 pm 10:18 PM

Tout d'abord, confirmez que l'appareil est connecté au Wi-Fi du routeur cible ou connecté via un câble réseau; 2. Entrez http://192.168.10.1 dans la barre d'adresse du navigateur et appuyez sur Entrée; 3. Entrez le nom d'utilisateur et le mot de passe corrects (la valeur par défaut est souvent admin / admin ou afficher le dos du routeur); 4. S'il ne peut pas être ouvert, vérifiez s'il est connecté au mauvais réseau, confirmez l'adresse IP correcte (vous pouvez afficher la passerelle par défaut via IPConfig), redémarrer le routeur, modifier le navigateur ou éteindre le pare-feu; 5. Après la connexion, vous pouvez modifier le mot de passe du nom Wi-Fi, définir des options de sécurité, configurer le transfert de port, activer le réseau invité, mettre à niveau le micrologiciel, etc.; 6. Si vous oubliez votre mot de passe, vous pouvez réinitialiser les paramètres d'usine en appuyant et en maintenant le trou de réinitialisation du routeur pendant 5 à 10 secondes, mais toutes les configurations seront effacées.

Linux comment répertorier tous les processus en cours d'exécution Linux comment répertorier tous les processus en cours d'exécution Aug 08, 2025 am 06:42 AM

UsepsauxforaCompletesNapshotofallrunningProcesses, montrant queDetailedInformationIliser, PID, CPU, etmemoryUsage.2.Usetoporhtopforreal-timemonitingofprocessswithdynamicupdates, WHORSHTOPOFFERSAMORINGINGETURS.3

Comment implémenteriez-vous le versioning d'API dans une application PHP? Comment implémenteriez-vous le versioning d'API dans une application PHP? Aug 14, 2025 pm 11:14 PM

APIVERSIONINGInPHPCANBEEFECECTECTIVEMENT Implexedusingurl, en-tête, OrseryParameterApproaches, WithurlandHeaderVersioningBeingMostreComMend.1.ForUrl-basé à la Version, comprend la conduite de l'Inversaire (par exemple, / v1 / utilisateurs) et OrganizeControllersInversedDirectorDectores, RoS, ROTO

See all articles