サーバー設定 · 1 min read · Feb 06, 2026
Ubuntu Lucid Lynx (10.04) に Nginx と PHP 5.3 および PHP-FPM をコンパイルなしでインストールする
Ubuntu Lucid Lynx (10.04) に Nginx と PHP 5.3 および PHP-FPM をコンパイルなしでインストールする
Version 1.0
Twitterでフォローしてください
Apacheはほとんどの場合、メモリを多く消費するプロセスであるため、人々はウェブサイトをホストするための異なる方法を探し始めました。Apacheは明らかに利用可能な唯一のウェブサーバーではありません。良い例としては、lighttpdやnginxがあります。このチュートリアルでは、Ubuntuサーバーにそれをインストールする方法を示します。このチュートリアルはDebianにも適用されますが、非常に小さな違いがあります。
準備はいいですか?始めましょう。
ステップ 0 - 前提条件
このチュートリアルを完了するには、Ubuntu Lucid (10.04) の基本システムをインストールしていることを前提とします。これがどのように行われるかは、さまざまなチュートリアルで読むことができます。このチュートリアルは、あまり手間をかけずにnginx+phpを実行することに焦点を当てています。
ステップ 1 - Nginx
nginxをインストールすることが最初のステップです。これは、リポジトリからダウンロードすることで簡単に行えます。
sudo apt-get install nginxデフォルトのvhostは、正しく機能するように変更する必要があります。
sudo vim /etc/nginx/sites-available/default設定の良い出発点は次のとおりです。
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/localhost.access.log;
## デフォルトの場所
location / {
root /var/www;
index index.php;
}
## 画像と静的コンテンツは異なる扱いを受ける
location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
access_log off;
expires 30d;
root /var/www;
}
## /var/www ディレクトリ内のすべての .php ファイルを解析
location ~ .php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;
include fastcgi_params;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
## .htaccess と .htpassword の表示を無効にする
location ~ /\.ht {
deny all;
}
}
upstream backend {
server 127.0.0.1:9000;
}
さて、ここまで完了しました。次に、PHPに必要なファイルをインストールします。
ステップ 2 - PHPのインストール
多くのサイトは、ウィキ、フォーラムソフトウェア、ウェブログ、またはまったく異なるものなど、動的コンテンツを提供するためにPHPに依存しています。
Ubuntu Lucid (10.04) ではPHP5.3が公式にサポートされているため、DotDebを使用する必要はありません。以下のように簡単です。
sudo apt-get update結果のテキストにはdotdebが含まれているはずです。
次に、PHPをインストールします。PHP-FPMをインストールするには、公式にサポートされていないため、PPAを追加する必要があります。
add-apt-repository ppa:brianmercer/phpsudo apt-get update && sudo apt-get install php5-fpmデータベースを使用する予定がある場合や特定のモジュール(mcrypt、ldap、snmpなど)が必要な場合は、それらもインストールできます。
さて、これでnginxとPHPがインストールされ、準備が整いました。
ステップ 3 - 最終調整
以前に行った設定変更を反映させるためにnginxを再起動します。
sudo service nginx restart再起動は問題なく行われるはずです。
php5-fpmをインストールした後は、起動しているはずです。php.iniファイルを変更した場合は、php5-fpmを再起動する必要があります。
sudo service php5-fpm restartすべて順調です。両方が正常に動作しているはずです。
ステップ 4 - テスト
PHPの実行が機能しているかテストするために、/var/wwwに次の内容のindex.phpファイルを作成します。
ウェブサーバーにアクセスすると、生成されたphpinfoが表示されるはずです。表示されない場合は、何かがうまくいっていません。
ステップ 5 - トラブルシューティングと最終ノート
phpinfoが表示されない場合、何かが間違っている可能性があります。何が間違っているのかを追跡するために、nginxのエラーログを確認できます。
sudo tail /var/log/nginx/error.logphp.iniを変更した場合は、php5-fpmを再起動する必要があることを忘れないでください。nginxの再起動は必要ありません。
私の例の設定では、fastcgiエラーのインターセプトを有効にしています。深刻なエラーが発生した場合(たとえば、「クラスxyzを再宣言できません」)、nginxはこのページをキャッチし、何かがうまくいかなかったことを示す「良い」エラーページを表示できます。このようにして、何かが深刻に問題が発生した場合に、提供される情報が少なくなります。
これが気に入らない場合は、オフにすることができます。
php5-fpmが実行されていない場合、PHPファイルは解析されず、nginxはユーザーにエラーページを表示します。
さて、これで完了です。新しいnginxベースのウェブサーバーでPHPを提供できるようになりました。nginxは非常に優れており、多くの設定が可能です。リライトが必要な場合、nginxは.htaccessファイルでは動作しないことに注意してください。リライトが機能するようにvhost設定を変更する必要があります。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。