スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Tag:スポンサー広告 

【Tips】Fedoraにnginxを入れてPHPを使う方法

nginxとは?
エンジンエックスと読みます
軽量で高性能なWebサーバだそうです

軽量なWebサーバといえばLighttpdなどが有名かもしれませんが、このnginxというのもなかなか優れているという噂を聞きつけ早速いじってみました

今回は導入編として

Fedora10に導入し、FastCGIを利用してPHPをうごかしてみるところまでやってみたいと思います

1. nginxのインストール
sudo yum install nginx

ネット上を見かけると自分でmakeしてることが多かったのですが、yumパッケージで用意されているようなのでこちらでインストールします

2. FastCGIのインストール
sudo yum install lighttpd-fastcgi

どうやらlighttpd-fastcgiに含まれるspawn-fcgiというのが使えるらしくまとめてインストールします

このspawn-fcgiというものを使うことによって、Webサーバとは独立したプロセスとしてcgiのプロセスを簡単に用意できるようです

文字通りfcgiプロセスを産み出すわけですね

3. nginxの起動
sudo /etc/init.d/nginx start

ひとまずどんなモノなのか起動してみたくなったのでとりあえず起動してみました

いつも使っているapache(httpd)と同じように

/etc/init.d/nginx start
nginxの起動

/etc/init.d/nginx stop
nginxの停止

/etc/init.d/nginx reload
設定の再読込み

などのコマンドが用意されています

さてブラウザで確認すると以下のような画面になるかと思います



4. nginxのログの確認
アクセスログ
tail -f /var/log/nginx/access.log


エラーログ
tail -f /var/log/nginx/error.log


ちゃんとfavicon.icoがないと怒られていますね(笑)

5. PHPを実行するcgiプロセスを立ち上げる
sudo spawn-fcgi -a 127.0.0.1 -p 8080 -u nginx -g nginx -f /usr/bin/php-cgi

この意味はなんとなくわかるかと思いますが

アドレスは127.0.0.1
ポートは8080番
cgiは/usr/bin/php-cgi
プロセスのユーザ、グループはnginx

という設定でfcgiプロセスを生成するという意味になります

実行してみると

spawn-fcgi: child spawned successfully: PID: 2041

のような出力が得られます。この場合はプロセス番号2041でFastCGIが動いたということになります

6. nginxの設定ファイルの変更

設定ファイルは
/etc/nginx/nginx.conf
になります

location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:8080;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}

このような設定をひとまずします

ほとんど手順5でやったのと合っているので分かりやすいと思いますが

fastcgi_paramの部分だけは少し話しておきます

そのままですがfastcgi_paramはFastCGIに対して渡すパラメータと値のようですね

この場合だと

スクリプト名(SCRIPT_FILENAME)は

/usr/share/nginx/html$fastcgi_script_name

ですということになりますね

nignxに対してリクエストが来たスクリプト名を表すのが

fastcgi_script_name

になります

つまり

例えばブラウザで

http://host/test.php

というURLをリクエストすると

スクリプト

/usr/share/nginx/html/test.php

がFastCGIにより実行されるということですね

7. PHPが動くのか実際に実験

/usr/share/nginx/html/test.php





と保存しておきます

そしてブラウザから

http://host/test.php

とかすると



と表示され無事nginxでPHPが使えているようです
スポンサーサイト
テーマ : UNIX/Linux
ジャンル : コンピュータ

Tag:PHP  Trackback:0 comment:0 

Comment

comment form
(編集・削除用):
管理者にだけ表示を許可
プロフィール

6rats

Author:6rats
こんにちは、ITベンチャーで働くエンジニアです
主に自分の周りで起きた技術的なことをメモとして書き残して行きます。
Android以外にもRuby/Ruby on RailsやFuelPHPなどなどたまにやります。基本的なスタンスとしては興味があるもしくは必要になったらいろんなことにチャレンジします。
最近はiOSアプリ開発を始めています。

購読
follow us in feedly
個人プロダクト

Androidアプリ

Twitterクライアント

Webアプリケーション

EcPriceWatch(Amazon価格の推移を計測、最安値を知らせるサービス)
Google AdSense
ブログ村
にほんブログ村 IT技術ブログへ
にほんブログ村
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。