Maison développement back-end Problème PHP Comment installer et démarrer le code source Linux PHP

Comment installer et démarrer le code source Linux PHP

Jul 09, 2021 am 09:09 AM
linux php

Comment démarrer l'installation du code source PHP Linux : 1. Téléchargez le code source PHP et décompressez le package de fichiers ; 2. Installez les dépendances, compilez et installez ; 3. Configurez PHP ; 4. Définissez les variables d'environnement ;

Comment installer et démarrer le code source Linux PHP

L'environnement d'exploitation de cet article : système linux5.9.8, PHP version 7.1.4, ordinateur DELL G3

Comment installer et démarrer le code source Linux php ?

Étapes pour installer le php code source sous Linux

1. Téléchargez le code source php

Adresse de téléchargement : http://cn.php.net/downloads.php

2 Installation

1. Déplacez le package binaire téléchargé vers le /usr/. répertoire local et décompressez le fichier package

tar zxvf php-7.1.4.tar.gz

2. Entrez /usr/local/php-7.1.4 sous le dossier php décompressé, installez les dépendances, compilez et installez

yum install  libxml2  libxml2-devel
./configure --prefix=/usr/local/php  --with-zlib --enable-zip --with-openssl --enable-fpm --enable-mbstring --with-libdir=lib64 --without-pear  --disable-phar
make
make test (编译完后可以允许一下make test命令,检测编译是否有问题)
make install

Informations récapitulatives une fois l'installation terminée :

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM defconfig:     /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:          /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/

3 . Configuration PHP

#php的配置文件为 php.ini
cp /usr/local/php-7.1.4/php.ini-production   /usr/local/php/lib/php.ini
#使得另一种方法来管理服务:
cp /usr/local/php-7.1.4/sapi/fpm/php-fpm /etc/init.d/php-fpm
#添加执行权限
chmod +x /etc/init.d/php-fpm 
#php-fpm的配置文件
cp /usr/local/php/etc/php-fpm.conf.default   /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default   /usr/local/php/etc/php-fpm.d/www.conf

Modifier php-fpm selon la configuration de la machine Le nombre maximum de processus est limité à /usr/local/php/etc/php-fpm.d/www.conf

Utiliser netstat -napo grep " php-fpm" | wc -l pour vérifier le nombre actuel de processus fastcgi. Si le nombre est proche de la limite supérieure configurée dans conf, vous devez augmenter le nombre de processus.

Mais vous ne pouvez pas l'augmenter à l'infini. Vous pouvez ajuster le nombre de sous-processus php-fpm à 100 ou plus selon la mémoire du serveur. Sur un serveur avec 4G de mémoire, 200 suffisent.

pm.max_children = 200
pm.start_servers = 10
pm.min_spare_servers = 8
pm.max_spare_servers = 12

4. Définir les variables d'environnement

vi /etc/profile

Après l'ouverture, ajoutez la configuration suivante en bas du document :

export PATH=/usr/local/php/bin:$PATH
:wq!保存退出,执行如下命令,使更改生效
source /etc/profile

5. Démarrez le test php

#启动
/etc/init.d/php-fpm start
#测试php
cd /usr/local/nginx/html
vi test.php

Ajoutez le contenu suivant :

<?php  
 echo phpinfo();  
?>

:wq! Enregistrez et quittez.

Entrée du navigateur : http://10.62.32.123/test.php

Si l'interface PHP version 7.1.4 apparaît, elle affichera l'interface de configuration détaillée de php, indiquant que l'installation est correcte

6. stop php

Le code source de PHP 7.1.4 a déjà intégré php-fpm, il vous suffit d'ajouter des paramètres de compilation lors de la configuration.

Les paramètres de compilation pour php-fpm sont –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-libevent-dir=libevent location.

Cependant, php-fpm sous php 7.1.4 ne prend plus en charge /usr/local/php/sbin/php-fpm (start|stop|reload) et les autres commandes que php-fpm avait auparavant, et vous devez utiliser contrôle du signal :

Le processus maître peut comprendre les signaux suivants :

SIGINT, SIGTERM Terminer immédiatement

SIGQUIT Terminer en douceur

SIGUSR1 Rouvrir le fichier journal

SIGUSR2 Recharger en douceur tous les processus de travail et recharger la configuration et les modules binaires

Exemple :

php-fpm 关闭:  
kill -SIGINT `cat /usr/local/php/var/run/php-fpm.pid`  
php-fpm 重启:  
kill -SIGUSR2 `cat /usr/local/php/var/run/php-fpm.pid`

Afficher le nombre de processus php-fpm :

ps aux | grep -c php-fpm
netstat -anpo | grep "php-cgi" | wc -l
netstat -anop | grep "php-fpm" | wc -l

3. Annexe

Instructions liées aux options de compilation php :

./configure --prefix=/usr/local/php \ #指定安装目录
--with-config-file-path=/usr/local/php/etc \ #指定配置文件的目录,默认在php/lib下满\
--enable-fpm \启用php的fpm
--enable-mbstring  \ 启用多字节字符串支持
--with-libdir=lib64 \
--without-pear \禁用pear扩展 
--disable-phar \ 禁用pear扩展的phar函数库
--enable-mysqlnd \ 启用php的mysql驱动 
--with-mysqli=mysqlnd \ 指定mysql
--with-pdo-mysql=mysqlnd \指定mysql

Apprentissage recommandé : "Tutoriel vidéo PHP"

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.

Stock Market GPT

Stock Market GPT

Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

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

Mantianxing Comics Version complète Entrance_Mantianxing Comics Advertising Special Edition Lien Mantianxing Comics Version complète Entrance_Mantianxing Comics Advertising Special Edition Lien Sep 28, 2025 am 10:30 AM

La version complète de Mantianxing Comic est https://www.mantianxingmh.com. La plate-forme couvre une variété de thèmes tels que la passion, l'amour, le suspense, la science-fiction, etc., avec des ressources riches et des mises à jour en temps opportun et soutient la récupération classifiée; Il offre une qualité d'image à haute définition, des modes de virage à plusieurs pages, un ajustement de fond et une luminosité personnalisés, et dispose d'un mode de protection oculaire pour optimiser l'expérience de lecture; Les utilisateurs peuvent créer des étagères, enregistrer des enregistrements de lecture, télécharger hors ligne et réaliser des progrès de synchronisation croisée.

Programmation de mémoire persistante Programmation de mémoire persistante Sep 30, 2025 am 10:47 AM

Programmation de mémoire persistante en juin 2013 J'ai écrit sur les futures interfaces pour la mémoire non volatile (NVM). Ceci décrit le modèle de programmation NVM en cours de développement par SnianVM ProgrammingTechnicalWorkgroup (TWG). Au cours des quatre dernières années, des spécifications ont été publiées et, comme prévu, les modèles de programmation sont devenus au centre de nombreux efforts de suivi. Ce modèle de programmation, décrit dans la spécification comme nvm.pm.file, peut mapper PM à la mémoire par le système d'exploitation en tant que fichier. Cet article présente comment le modèle de programmation de mémoire persistante est implémenté dans le système d'exploitation, quel travail a été fait et quels défis auxquels nous sommes toujours confrontés. Fond de mémoire persistante PM et StorageClassMe

Comment utiliser la programmation orientée objet (POO) dans PHP? Comment utiliser la programmation orientée objet (POO) dans PHP? Sep 28, 2025 am 03:26 AM

OopinphporganizescodeNororeusableclasses et objet.1.classesdefineproperties et méthodes, InstanciatedVia $ this.2.Constructors (__ Construct) initializeObjectProperties.3. accessmodificateurs (public, privé, protégé)

Comment exécuter une commande au démarrage de Linux Comment exécuter une commande au démarrage de Linux Sep 29, 2025 am 06:28 AM

TorunacommandatLinuxStartup, Utilisation: 1.Crontab-ewith@rebootforsimpleusetasks.2.CreateasystemDerviceForfullControl.3.Addcommandsto/etc/rc.localforlegacycompatibilité.enablesvicesneeded.

Comment vérifier la disponibilité d'un serveur Linux Comment vérifier la disponibilité d'un serveur Linux Sep 30, 2025 am 02:26 AM

Utilisez la commande de disponibilité pour afficher directement l'heure du fonctionnement du système, affichant l'heure actuelle, l'heure d'exécution, le nombre d'utilisateurs et la charge; 2. Obtenez le temps d'exécution en secondes via CAT / Proc / Uptime, ce qui est pratique pour le traitement du script; 3. Les commandes supérieures et W affichent les informations de disponibilité dans la tête, ce qui convient à la surveillance de l'état d'autres systèmes en même temps.

Comment obtenir le dernier ID inséré dans PHP MySQL? Comment obtenir le dernier ID inséré dans PHP MySQL? Sep 28, 2025 am 05:57 AM

Utilisez mysqli_insert_id () (style de procédure), $ mysqli-> insert_id (style objet), ou $ pDo-> lastInsertid () (PDO) pour obtenir le dernier ID inséré et doit être appelé immédiatement dans la même connexion pour assurer une précision.

Quels sont les traits et comment les utiliser en php Quels sont les traits et comment les utiliser en php Oct 02, 2025 am 04:17 AM

TRAITSINPHPENABLEHORIZONTALCODEREUSEBYALLOING CLASSESTOINHERITMetMethodsfromreusableTraitContainers, contournant les liens de gamme.

Comment utiliser les classes et méthodes finales en PHP? Comment utiliser les classes et méthodes finales en PHP? Sep 28, 2025 am 05:55 AM

FinalClasses etthethodsInphPPreventInheritanceAndOverridToprotectCriticalCode.2.AfinalClassCannotBeExtend, AssuranceBehaviorremainSunchanged.3.AfinalMethCannotBeOverridden, PréservingConsistentImPlementationAcrosssubclasses.4

See all articles