ホームページ  >  記事  >  バックエンド開発  >  Ubuntu は php7.0 をアップグレードし、fpm ソケットを構成します

Ubuntu は php7.0 をアップグレードし、fpm ソケットを構成します

WBOY
WBOYオリジナル
2016-06-20 12:41:161123ブラウズ

簡単に言うと、

--(これくらいしか知りません)--、nginx は (fastcgi を管理するため) fpm を通じてリクエストを処理し、リクエストとレスポンスを実装します。

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

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

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

速度の比較と最適化された構成については、今は話さないでおこう。

まず、php7 を ubuntu (14.10 lts) からアップグレードすることについて話しましょう

sudo add-apt-repository ppa:ondrej/php-7.0sudo apt-get updatesudo apt-get install php7.0-fpm

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

php -vPHP 7.0.1-4+deb.sury.org~trusty+1 (cli) ( NTS )Copyright (c) 1997-2015 The PHP GroupZend 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/fpmroot@tb:/etc/php/7.0/fpm# lsconf.d  php-fpm.conf  php.ini  pool.droot@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#

最後に、上級の学生は Nginx+PHP を参照してください。 FPM 最適化手法の概要

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:壊れたPHP次の記事:壊れたPHP