ホームページ  >  記事  >  バックエンド開発  >  Ubuntuをphp7.0にアップグレードする際のfpmソケットの設定方法を詳しく解説

Ubuntuをphp7.0にアップグレードする際のfpmソケットの設定方法を詳しく解説

藏色散人
藏色散人転載
2020-04-13 14:12:303478ブラウズ

簡単に言えば、

(私が知っているのはこれだけです)、nginx は (fastcgi を管理するため) fpm を通じてリクエストを処理し、リクエストとレスポンスを実装します。

nginx と php-fpm は、ポート 9000 (デフォルト) またはソケットをリッスンすることで実装できます。

9000 の形式は、ネットワーク上では 127.0.0.1:9000 です。 ngxin conf ファイルを通じて、.php で終わるすべてのものは処理のためにポート 9000 に渡されます。php-fpm (fastggi のプロセス マネージャー) が fastcgi サブプロセスを選択して接続し、環境変数と標準入力を fastcgi サブプロセスに送信します。

ソケット ファイルはネットワークを経由せず、ソケットです。

わかりました。速度の比較と最適化された構成については、今は触れません。

最初に 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

アップグレードが完了した後も、以前の fpm ファイルはまだ残っています。 。必要に応じて参照または削除できます。

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

phpfpm listen ポート 9000 をソケットに変更します (デフォルトはソケット)

php7 のデフォルトは前の nginx -conf ファイルによると、php ファイル処理では 502 エラーが報告されます。

デフォルトのソックスは php 設定ファイルにあります。pool.d の 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#

は次の 2 行にあります:

listen = /run/php/php7.0-fpm.sock
; listen = 127.0.0.1:9000
## 更改nginx conf文件 ##

nginx 設定ファイル 私のものは # にあります##

  root@tb:/etc/nginx/conf.d# ls
  git.conf  svn.conf  tb.conf

git.conf を次のように変更します

 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;
    }
}

php-fpm と 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#

問題ないことに注意してください。特定の nginx および fpm スクリプト実行ファイル (自分で変更できます) は次のとおりです:

    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#

追加: apt-get を通じて以前のバージョンに戻したい場合


sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update

あとはインストールするだけです

以上がUbuntuをphp7.0にアップグレードする際のfpmソケットの設定方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。