私はついにこれを行うための素晴らしいチュートリアルを見つけました。すでにLAMPスタックがインストールされているので、実行した手順の概要を説明しますが、完全なチュートリアルはこちらにあります。
新しい注意事項:
チュートリアルでは、次のコマンドでrootユーザーに切り替えます。
sudo su
私の場合sudo
、ユーザーを切り替えるのではなく、単にこれらのコマンドのプレフィックスを付けたので、その方法で手順を文書化します。
ベギン
ステップ1:Apache Worker MPM(マルチプロセスモジュール)をインストールする
sudo apt-get install apache2-mpm-worker
これは、Apacheをインストールするときのデフォルトであるインストール済みのプリフォークを置き換えます。
ステップ2:PHP5と必要なモジュールをインストールする
sudo apt-get install libapache2-mod-fastcgi php5-fpm php5
この時点で、「libapache2-mod-fastcgi」のインストール中にエラーが発生する場合があります。
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package libapache2-mod-fastcgi is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source
E: Package 'libapache2-mod-fastcgi' has no installation candidate
このパートは上記のチュートリアルにはありません
これを調整multiverse
するには、aptソースにリポジトリを追加する必要があります。
これをする:
sudo nano /etc/apt/sources.list
次の行を追加しました:
deb http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-updates multiverse
deb http://security.ubuntu.com/ubuntu precise-security multiverse
precise
この場合、私のバージョンのUbuntu「Precise Pangolin」を指します。
そこで、これらの変更を保存してターミナルに戻します。
sudo apt-get update
そしてまた:
sudo apt-get install libapache2-mod-fastcgi php5-fpm php5
これで動作するはずです。
次に、これらのApacheモジュールを有効にします。
sudo a2enmod actions fastcgi alias
Apacheを再起動します
sudo service apache2 restart
ステップ3:Apacheの構成
ApacheをPHP-FPMで動作させるには、次の設定が必要です。
<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization
<Directory /usr/lib/cgi-bin>
Require all granted
</Directory>
#directory statement mult be on multiple lines
</IfModule>
注意:
古いバージョンのApache(2.3.x以前)を使用している場合は、この行を省略します
<Directory /usr/lib/cgi-bin> Require all granted </Directory>
次のコマンドでインストール済みのバージョンを確認できます
apache2 -version
たとえば、/etc/apache2/conf.d/php5-fpm.conf
(このファイルは存在しないため、作成する必要があります)のように、グローバルApache構成に配置する(すべての仮想ホストで有効になる)か、PHP-FPMを使用する各仮想ホストに配置できます。
私はグローバルルートを選択しました。
sudo nano /etc/apache2/conf.d/php5-fpm.conf
上記のコードブロックを貼り付けて保存し、終了します。この新しいファイルは、/etc/apache2/conf.d/
ディレクトリ内のすべてのファイルをロードするApacheのデフォルト設定によって自動的にロードされます。
Apacheを再起動します。
sudo service apache2 restart
次に、ドキュメントルートに次のPHPファイルを作成します/var/www
。
sudo nano /var/www/info.php
追加:
<?php phpinfo();
保存して終了します。
次に、ブラウザでそのファイルを呼び出します(例http://your-server-ip/info.php
)
上部のサーバーAPIの下に表示されFPM/FastCGI
ます。
成功!
デフォルトのTCPポートの代わりにUNIXソケットを使用するようにPHP-FPMを変更する方法や、すべてではなく個々の仮想ホストにこれを構成する方法などの詳細については、上部にリンクされているソースチュートリアルを参照してください。