[PHP-users 1790] Re: PHPスクリプトをAddHandler で結び付けたい

松島 知弘 php-users@php.gr.jp
Tue, 04 Sep 2001 21:04:08 +0900


松島です。

遅いレスですが、ソースを弄って簡単に実装できたので報告します。

> > PHPスクリプトを、Apacheで、ハンドラを利用して
> > AddHandlerで結び付けたいのですが、そのような仕掛けは
> > 用意されている(or予定がある)のでしょうか。
> これ、欲しいですね。実装はそんなに難しくないので、
> パッチを送ったら採用してもらえるかな?


Apache 1.3.20 + PHP 4.0.6 で次の手順で実装できました。


1.ソース改変。

 php-4.0.6/sapi/apache/mod_php4.c の最後の辺り

        handler_rec php_handlers[]

 の定義の {NULL} の前の行に

        {"php-script", send_parsed_php},

 を加える。

2.再コンパイルとインストール(前回のconfigureと同じ設定で)

        make
        make install

 #mod_php4.c が再コンパイルされているのを確認。

3.httpd.conf の編集

        AddHandler php-script .php
        AddType    text/html  .php

 を加える。

        AddType application/x-httpd-php .php

 の行は行頭に # を付けてコメント化する。

4.HTML以外を吐くファイルに対応

 画像やPDF等、text/html でないMIMEタイプを吐くPHPファイルは
 .htaccess で

        <file hoge.php>
          ForceType image/png
        </file>

 の要領でMIMEタイプを指定。

5.Apache を再起動

6.動作確認……


以上です。

ソースを見てみて、あまりの手軽さに驚いてしまいました。

というか、ソースに手を加えずに

  AddHandler application/x-httpd-php .php

でも動きそう……(^^;)。

──────────────────────────────
松島 知弘 matsushima@popup.org
          http://www.popup.org/ai/