Maison > développement back-end > PHP7 > Explication détaillée de la configuration du socket fpm lors de la mise à niveau d'Ubuntu vers php7.0

Explication détaillée de la configuration du socket fpm lors de la mise à niveau d'Ubuntu vers php7.0

藏色散人
Libérer: 2023-02-17 14:16:02
avant
3518 Les gens l'ont consulté

Pour faire simple

(c'est tout ce que je sais), nginx gère les requêtes via fpm (pour gérer fastcgi) pour implémenter les requêtes et les réponses.

Et nginx et php-fpm peuvent être implémentés en écoutant le port 9000 (par défaut) ou le socket.

Le format de 9000 est 127.0.0.1:9000, qui est sur le réseau. Grâce au fichier de configuration ngxin, tout ce qui se termine par .php est transmis au port 9000 pour traitement. php-fpm (le gestionnaire de processus de fastggi) sélectionne et se connecte à un sous-processus fastcgi, et envoie les variables d'environnement et l'entrée standard au sous-processus fastcgi. traiter. Puis traiter en continu la demande et la réponse

Le fichier socket ne passe pas par le réseau, c'est un socket.

Bon, quant à la comparaison de vitesse et à la configuration optimisée, n'en parlons pas pour l'instant.

Parlons d'abord de la mise à niveau d'Ubuntu (14.10 lts)php7

sudo add-apt-repository ppa:ondrej/php-7.0
sudo apt-get update
sudo apt-get install php7.0-fpm
Copier après la connexion

Une fois la mise à niveau terminée, le fichier fpm précédent est toujours là . Vous pouvez y faire référence ou le supprimer selon le cas

php -v
PHP 7.0.1-4+deb.sury.org~trusty+1 (cli) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, 
    by Zend     Technologies
Copier après la connexion

Changez le port d'écoute phpfpm 9000 en socket (la valeur par défaut est socket)

paramètres par défaut de php7 au socket, donc si selon le fichier nginx -conf précédent, le traitement du fichier php signalera une erreur 502.

La sock par défaut est dans le fichier de configuration php. www.conf

root@tb:/etc/php/7.0/fpm# pwd
/etc/php/7.0/fpm
root@tb:/etc/php/7.0/fpm# ls
conf.d  php-fpm.conf  php.ini  pool.d
root@tb:/etc/php/7.0/fpm#
Copier après la connexion

dans pool.d est dans ces deux lignes :

listen = /run/php/php7.0-fpm.sock
; listen = 127.0.0.1:9000
## 更改nginx conf文件 ##
Copier après la connexion

fichier de configuration nginx Le mien est Modifier le git.conf dans

  root@tb:/etc/nginx/conf.d# ls
  git.conf  svn.conf  tb.conf
Copier après la connexion

comme suit

 server{
    listen 80;
    server_name git.com ;
    root /home/gittest/;
    autoindex on;
  location ~ \.php$ {
    root           /home/gittest;
    #fastcgi_pass   127.0.0.1:9000;
    fastcgi_pass    unix:/run/php/php7.0-fpm.sock;
    fastcgi_index  index.php;
    fastcgi_intercept_errors        on;
    fastcgi_param  SCRIPT_FILENAME  /home/gittest/$fastcgi_script_name;
    include        fastcgi_params;
    }
}
Copier après la connexion

Redémarrez php-fpm et nginx

    root@tb:/etc/nginx/conf.d# service nginx reload
     * Reloading nginx configuration nginx                                                                           [ OK ] 
     
    root@tb:/etc/nginx/conf.d# service php7-fpm status
     * php-fpm7.0 is running
    root@tb:/etc/nginx/conf.d# service php7-fpm reload
     * Reloading PHP 7.0 FastCGI Process Manager php-fpm7.0[ OK ] 
    root@tb:/etc/nginx/conf.d#
Copier après la connexion

Veuillez noter que tout va bien. Les fichiers d'exécution de scripts nginx et fpm spécifiques (peuvent être modifiés par vous-même) se trouvent à l'adresse :

    root@tb:/etc/init.d# ls /etc/init.d/ |grep php7
    php7-fpm
    root@tb:/etc/init.d# ls /etc/init.d/ |grep nginx
    nginx
    root@tb:/etc/init.d#
Copier après la connexion

Supplémentaire : si vous souhaitez revenir à la version précédente via apt-get

sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
Copier après la connexion

Alors installez-le simplement

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!

Étiquettes associées:
source:segmentfault.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal