fc2ブログ

nginx for Windows でPHPを動かす

自分の低スペックなPCでも軽快に動く軽量WEBサーバを探した。
lighttpd にしようかなとも思ったが、
オフィシャル Windows バイナリがある nginx(エンジンエックス)にした。
WindowsXP上の nginx でPHPが動くようになったので、それまでの過程をまとめる。

1.nginxインストール
参考サイト:wiki.nginx.org日本語版
nginx: downloadからダウンロード。
Stable versionsで最新の nginx/Windows-0.7.67 にした。
ダウンロードした nginx-0.7.67.zip を解凍し、フォルダ名を nginx に変更してCドライブ直下に置いた。

2.PHPの設定
参考サイト:nginx + PHP on Windows in 5 minutes
php.netからWindows Binaries の zip package をダウンロード。
PHP5.2の最新版、PHP 5.2.14 zip package にした。
ダウンロードした php-5.2.14-Win32.zip を解凍し、フォルダ名を php に変更して C:\nginx 直下に置いた。

C:\nginx\conf\nginx.conf の以下の部分のコメントアウトをはずし、fastcgi_param を以下のように修正した。
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  #
  location ~ \.php$ {
      root           html;
      fastcgi_pass   127.0.0.1:9000;
      fastcgi_index  index.php;
      fastcgi_param  SCRIPT_FILENAME  C:/nginx/html$fastcgi_script_name;
  #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
      include        fastcgi_params;
  }

3.起動/終了ファイル作成
参考サイト:2.PHPの設定 と同じ
テキストエディタなどで、nginx + PHP 起動ファイルと終了ファイルを作成。
起動ファイル start-nginx.bat
@ECHO OFF
cd c:\nginx
start c:\nginx\nginx.exe
start /b c:\nginx\php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
ping 127.0.0.1 -n 1>NUL
echo Starting nginx
echo .
echo .
echo .
ping 127.0.0.1 >NUL
EXIT

終了ファイル stop-nginx.bat
@ECHO OFF
cd c:\nginx
c:\nginx\nginx.exe -s stop
taskkill /f /IM php-cgi.exe
EXIT

起動ファイル start-nginx.bat をダブルクリックすると nginx と php-cgi が起動される。(終了されるまでコマンドプロンプトは閉じない)
終了ファイル stop-nginx.bat をダブルクリックすると nginx と php-cgi が終了し、start-nginx.bat のコマンドプロンプトも閉じる。

phpファイルは C:\nginx\html 以下に置く(サブフォルダでも可)。
以上。日本語ドキュメントが少なかったけど何とかなった。

<関連記事>
nginx for Windows で nginx.conf の変更内容をちゃんと反映させる方法
  nginx.conf 変更後に、何も表示されないことがある。その解決方法。

nginx for Windows で CakePHP + SQLite を動かす
スポンサーサイト



コメント

承認待ちコメント

このコメントは管理者の承認待ちです

コメントの投稿

非公開コメント

プロフィール

himax64

Author: 南西
30代後半の無職です。
就活もせずダラダラ生きてます。
作ったもの

最新記事
人気記事
検索フォーム
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QRコード
カウンター