(mod_fastcgi on 2.2.x)windowsでCGIをFastCGIで実行するように設定する
2014/11/22
windows上でPHPをfcgid(FastCGI)実行を行う方法を、
fastcgi.comで提供されているモジュール(mod_fastcgi)を元にご紹介します。
ダウンロードから設定までご紹介していますので、そのままご利用いただけると思います。
Apacheバージョンは2.2.xを利用します。
はじめに
PHPをfcgid(FastCGI)実行するということだけに正直、結構苦労をしました。
というのも、Apacheとの組み合わせで動かなかったり、
こちらのfastcgi.comで提供されているモジュールもあって、
検索して得られる情報が、
どこで提供されているモジュールを元に検証しているのかがわからなかったりと、
結構、はまる結果になりました。
環境
- windows: windows 7 Ultimate(64bit)
- apache: 2.2.25
httpd-2.2.25-win32-x86-no_ssl.msi
httpd-2.2.25-win32-x86-openssl-0.9.8y.msi - fast_cgi: mod_fastcgi-2.4.6
mod_fastcgi-2.4.6-AP22.dll - PHP: php-5.5.5-Win32-VC11-x86(PHP)
ダウンロード
ダウンロードはfastcgi.comのサイトから行います。
http://www.fastcgi.com/drupal/node/3を開き、Douwnloadをクリックすると、
ディレクトリページ(http://www.fastcgi.com/dist/)が開きます。
ディレクトリページ内の[mod_fastcgi-2.4.6-AP..>]をクリックすると、
DLLのダウンロードが開始されます。
1
ちなみに過去のバージョンはhttp://www.fastcgi.com/dist/old/です。
インストール
ダウンロードが終了するとmod_fastcgi-2.4.6-AP22.dllが保存されます。
インストールの方法はダウンロードした、mod_fastcgi-2.4.6-AP22.dllを、
Apacheのインストールフォルダ内の[/modules]にコピーすることで完了します。
httpd.conf設定
fcgid(FastCGI)の設定をhttpd.confに対して行います。
公式のリファレンスページは以下のページです。
Module mod_fastcgi | FastCGI –
リファレンスを参考にと思ったのですが、サンプルは記載されていません。
結論から申しますとhttpd.confに以下の記述を行います。
(補足)
PHPのインストールディレクトリは[C:\php]でインストールしています。
モジュール名(モジュール識別子)は[fastcgi_module]を利用します。
9行目の[<<ex:DocumentRoot Path>>]はCGI実行するディレクトリを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
LoadModule fastcgi_module modules/mod_fastcgi-2.4.6-AP22.dll <Directory "C:/php/"> Options ExecCGI AllowOverride All Order allow,deny Allow from all </Directory> ScriptAlias /phpbin/ "C:/php/" Alias / "<<ex:DocumentRoot Path>>" <IfModule fastcgi_module> FastCGIConfig -autoUpdate -idle-timeout 120 -killInterval 3600 -maxClassProcesses 3 -maxProcesses 15 <Location /> AddHandler fcgid-script php Action fcgid-script /phpbin/php-cgi.exe Order allow,deny Allow from all </Location> </IfModule> |
設定が完了したら、Apacheを再起動します。
phpinfoファイルの準備
ドキュメントルートに対して、phpinfo.phpファイルを作成し、
テキストエディタで以下のソースを記述し保存します。
1 2 3 |
<?php phpinfo(); ?> |
PHPの実行確認
Apacheを再起動して、ブラウザからphpinfo.phpを確認します。
phpinfoによる情報が表示されれば完了です。
さいごに
この設定には少し不安な部分があります。
phpinfo.phpを実行した際に、
php-cgi.exeのプロセスが表示されることなくphpinfoが表示されています。
その為、プロセスの常駐による動作の確認が取れず不明な点を残す形になりました。
Windows は米国 Microsoft Corporation の米国およびその他の国における登録商標です。
登録番号は以下の通りです。
第3333588号、第3351402号、第4197799号、
第4348387号、第4395963号、第4648301号
Windows は米国 Microsoft Corporation の米国およびその他の国における国際登録商標です。
国際登録番号:1135413
Apache,Apache Hadoop,Apache Subversion,Hadoop,HDFS,HBase,Hive,Mahout,Pigは、
Apache Software Foundationの米国およびその他の国における登録商標または商標です。
ApacheソフトウェアはApache Software License (原文)および
Apache License, 2.0 (原文)に基づきOpen Source Initiativeに承認されライセンスされています。
関連記事
-
ローカル環境へのwordpress設置
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
ローカル環境へのphpMyAdmin設置
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Eclipseインストール方法(4.3.1 Kepler:日本語)
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
1つのPC(サーバー)に複数のApacheをエラーを避けて暫定インストール
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Apache2.0.xの初期設定をVBScriptを利用して1発で完了する方法
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
【一発理解】mod_rewriteのURL転送が動かず迷ったらこれを確認(相対ディレクトリ)
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Apacheの過去バージョンがダウンロードできるアーカイブ先(メモ)
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Windows7で環境変数PATHを設定する手順
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
(セオリー)windows7をリモートでシャットダウンする方法
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Apache2.0.xのhttpd.confを手動で作成する方法
Google or AdMax Promotion(it) 禁断の機能がau公式 …