[PHP-users 14072] Re: PHPに引数がキチンと渡されない

Moriyoshi Koizumi php-users@php.gr.jp
Tue, 18 Mar 2003 20:07:23 +0900


小泉です。

# 本家ではすでに FAQ 化している Apache2 のトラブルです。

Nob Watanabe <nobw@cc.rim.or.jp> wrote:
> どういうわけか"rhdownload=rh"という引数になってしまい、実行させたい
> シェルが実行されません
<snip>
> 環境
> OS	RedHat8.0
> Apache	2.0.40
> PHP	4.2.2

(ケース a)

AddInputFilter PHP .php

(ケース b)
<Files *.php>
SetInputFilter PHP
</Files>

(ケース c)
AddType application/x-httpd-php .php

Apache2 で PHP を利用するには、上記のようなディレクティブの形式が利用で
きますが、これらが2つ以上混在していると、POST を利用したときにトラブルが
発生します。

http://bugs.php.net/18648 に詳細があります。

なお、余談ですが、つぎによくある Apache2 FAQ ですが、一定以上のファイル
をアップロードできない、あるいは一定長以上のフォームテキストが送信されな
いでカットされてしまうというものですけれども、これは

LimitRequestBody xxxxxx
# xxxxx はバイト数

が指定されていることによります。


php-4.3.2 からはトラブルの多い apache2filter ではなく、トラブルの少ない 
apache2handler が標準になりますので、すこしはましになりますが。。。

ほかにも、Apache2 固有の既知のバグとして、まだ直されていないものに、
zlib_output_compression が使えないというのもあります。

というわけで、いろいろな意味で apache2 SAPI はお勧めしません。