2004年02月21日

Virtual hostごとにphpの可否

みんなやってることだとは思うんですが、簡潔なドキュメントとしてまとまっているところがなかったのでメモ

ポイントは2点

  • 基本的にphpのAddTypeをコメントアウトしておき必要なヴァーチャルホストでのみ記入しておく
  • php_flag engineを使いon/offを切り替える
実践すると以下のようになります
まず、Global設定でのphpの設定を下記の様に変更
    <ifModule mod_php4.c>
    php_flag engine off
#    AddType application/x-httpd-php .php
#    AddType application/x-httpd-php-source .phps
    </IfModule>
これで全仮想ホストでphpが無効になるので、あとは必要な仮想ホストの設定のなかで
<VirtualHost xxx.xxx.xxx.xxx>
    <ifModule mod_php4.c>
    php_flag engine on
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps
    </IfModule>
等として、phpを有効にしてください。

あと、.htaccessでオーバーライドをされたくない場合は使って欲しくないバーチャルホストで

<VirtualHost xxx.xxx.xxx.yyy>
    <ifModule mod_php4.c>
    php_admin_flag engine off
    </IfModule>
としておくとなお堅牢だと思います

バーチャルホストの表現の揺れが大きいのは検索エンジンで飛んでくる人向けなんでわざとです(笑)

Posted by Takuchan at 2004年02月21日 15:51 | トラックバック(0)