web-dev-qa-db-ja.com

Centos7へのphp-fpmApache2.4.6のインストール

Php-fpmを使用しようとしていますが、ウェブサーバーのパフォーマンスが向上する可能性があり、機能しているようです。しかし、何も高速化されていないようです。

次の手順を実行しました。

  • Yumを使用してphp-fpmをインストールしました
  • UNIXソケットを使用するようにphp-fpmを構成し、[www]をApacheにリッスンするように設定しました
  • 10-php.confの名前を10-php.conf.disabledに変更しました
  • Mpmをmpm_prefork_moduleからmpm_event_moduleに切り替えました
  • ディレクトリ設定の下にあるすべてのvhostに以下を追加しました。

    # php-fpm
    <FilesMatch "\.php$">
      SetHandler  "proxy:unix:/var/run/php-fpm/php-fpm.sock|fcgi://www/"
    </FilesMatch>
    
  • すべてを再起動/開始し、起動時にphp-fpmを有効にしました

Mod_fcgi、mod_fastcgi、mod_phpについて少し混乱していましたが、これらのいずれも変更していません(10-php.confの名前を変更する以外)。 mod_proxy_fcgiが最新の標準であることについて何か読んだのですが、明示的にインストールまたは有効化していないのです。

これは正しい設定ですか、それとも何かメリットを得るために何かが足りませんか?

1
Arth

このソリューションはUNIXソケットを使用しません(ポート9000でリッスンします)が、CentOSにPHP7-FPMを簡単にインストールする方法を探している他の人にこの答えを提供します。

ステップ1:PHP-FPMデーモンを設定する

ソフトウェアコレクション リポジトリを構成してから:

yum install rh-php70 rh-php70-php-fpm
systemctl enable rh-php70-php-fpm
systemctl daemon-reload
systemctl start rh-php70-php-fpm
  • 構成は/etc/opt/rh/rh-php70の下にあります
  • ログは/var/opt/rh/rh-php70/log/php-fpm/www-error.logの下にあります
  • systemdは/etc/systemd/system/multi-user.target.wants/rh-php70-php-fpm.service/usr/lib/systemd/system/rh-php70-php-fpm.serviceにリンクします
  • 実行可能ファイルは/opt/rh/rh-php70/root/usr/sbin/php-fpmにあります

ステップ2:Apache FastCGIを構成します

ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/$1

さらに読む

1

何かを最適化する場合は、見ているメトリックが必要です。いくつかの測定を行います。そのためのツールはたくさんあります。たとえば、 absiege です。 jmeter

いくつかの結果を取得し、さまざまな構成を比較して、どちらが自分に適しているかを確認します。

0
DukeLion