ログ日記

作業ログと日記とメモ

特定ファイルのみphp5で動作させる

php4で動いている環境で、ちょっとしたページを作る必要があった。今となっては数ページの単純なフォームでもフレームワークを使った方が楽に作れるので、フレームワークを使うことにした。
しかしLaizはPHP5用に書き直したのでphp5を入れる必要がある。そこで既存のページ群にフロントコントローラを置いて、そのファイルだけphp5で動かすように設定した。


sargeなのでsources.listにphp5用の設定を追加する。

# php5.1
deb http://people.debian.org/~dexter php5.1 sarge
deb-src http://people.debian.org/~dexter php5.1 sarge


そして関連パッケージをインストール。

apt-get install php5.1-cgi php5.1-mbstring


あとはapacheの設定。

vi /etc/apache2/site-available/example.com
<VirtualHost *:80>
    DocumentRoot "/home/example/public_html"
    ServerName example.com
    ServerAlias www.example.com

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

    <FilesMatch "form\.php">
      AddHandler php5-script .php
      Action php5-script /cgi-bin/php5.1
      Options ExecCGI FollowSymLinks
    </FilesMatch>

</VirtualHost>
a2ensite example.com
a2enmod actions
/etc/init.d/apache2 restart

これでform.phpのみphp5で動くようになる。その後は通常通りform.phpからフレームワークを読み込めば良い。