FreeBSD10でPHP5.4をApache24+FastCGIで動かす
FreeBSDでRedmineをFastCGI経由で動かす事に成功しました。
その副産物として、PHPもFastCGI経由で動かす事ができました。次のウェブページを参考にさせていただきました。ありがとうございます。Thank you!
- PHP5.5をインストールする – FreeBSD入門
- Using PHP5-FPM With Apache 2.4 (+ mod_proxy_fcgi Module) On Fedora 18 – Page 2 – Page 2
ウェブサイトとして、VirtualHost機能を使って、www.example.comで運営しているとします。また、PHP5.4はインストール済とします。
- /usr/local/etc/apache24/httpd.confの修正
- /usr/local/etc/apache24/extra/httpd-vhosts.confの修正
- 動作確認
1. /usr/local/etc/apache24/httpd.confの修正
まずは、必要なモジュールを読み込む設定をします。
LoadModule php5_module libexec/apache24/libphp5.so
LoadModule proxy_module libexec/apache24/mod_proxy.so
LoadModule proxy_fcgi_module libexec/apache24/mod_proxy_fcgi.so
LoadModule fastcgi_module libexec/apache24/mod_fastcgi.so
拡張子.php/.phpsの関連付けをします。
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
WordPressを動かす時などに必要ですが、index.phpもトップページとして認識出来る様にします。
#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
DirectoryIndex index.html index.htm index.php
2. /usr/local/etc/apache24/extra/httpd-vhosts.confの修正
VirtualHostで動かすための設定です。今回の肝は、7〜9行目のproxy_moduleの設定です。
ServerAdmin webmaster@example.com
ErrorLog "/var/log/www.example.com-error_log"
CustomLog "/var/log/www.example.com-access_log" common
DocumentRoot /www/data
ServerName www.example.com
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/www/data/$1
# default charset UTF-8
AddDefaultCharset utf-8
# .htaccess setting
AllowOverride All
# SSI OK
# SymbolicLink OK
Options +Includes +FollowSymLinks
# aapche 2.4 change config
Require all granted
3. 動作確認
次のコマンドで、Apacheを再起動して下さい。エラーが出たら、設定ファイルなどに間違いがあるはずなので、原因を突き止めて直します。
# apachectl restart
/www/data/info.phpと言うファイルを作ります。中身は次の通りです。
<!--?php phpinfo(); ?-->
http://www.example.com/info.phpにアクセスして、"Server API"が"FPM/FastCGI"になっていれば成功です。
[amazonjs asin="B00BH772VU" locale="JP"]
ディスカッション
コメント一覧
まだ、コメントがありません