Top > diary > 2006-12-17

***getに渡している文字を数えてみると [#s3afdf19]

 実験中の環境(Windows2000,Apache2.0.55,PHP4.3.11)で作成中のプラグインからgetに渡される文字の数を数えてみました。
//cut
#code(diff){{
&refer=PukiWiki%2F1.4%2FManual%2FPlugin%2F			42
&sort_ad=a-a-d-a-a-a					20
&sort_type=-r-r-r-r-r					21
&sort=2&page_link=short					23
&sort_sec=2						11
&section&filter_0=b					19
&filter_1=bugtrack_list+					24
&filter_2=%E3%83%96%E3%83%AD%E3%83%83%E3%82%AF%E5%9E%8B	55
&filter_3=%E2%98%85%E2%98%86%E2%98%86			37
&filter_4=%E3%83%90%E3%82%B0%E8%BF%BD%E8%B7%A1%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%81%AE	91
&set_filter_form=						17
&foot=lower						11
&main_page=PukiWiki/1.4/Manual/Plugin			37
							408
}}

408個… (^^;&br;

~一応これを超えるとダメっぽいです。&br;
そしてPOSTに変えてみると…Apacheがエラーを吐きました。orz&br;

~昨晩、調べ途中に寝てしまったのですが、なんとなく原因が見えてきました。&br;
当初、POSTによるApacheのエラーと予測していたのですが、Apacheのエラーを元に調べてみるとPHPに問題があるようです。つまりPOSTからPHPに引き渡すまでは正常に処理されているのですが、PHPから引き渡された内容を処理する段階で一部関数に於いて、致命的エラーが発生するようです。&br;

ちなみに、Apacheのエラー文で検索をかけた時に[http://pukiwiki.sourceforge.jp/?%E8%B3%AA%E5%95%8F%E7%AE%B13%2F210 質問箱3/210]等のPukiWiki関連が多く検出されました。&br;
(アクションで単純に引き渡された文字を表示するだけならエラーは発生しません。)&br;

~ 少し調べてみました。どうやら[http://pukiwiki.sourceforge.jp/?%E8%B3%AA%E5%95%8F%E7%AE%B13%2F210 質問箱3/210]と同じ現象で''インライン''が抱える問題のようです。Apache2+PHP4の組み合わせでPukiWikiを利用した環境の場合、インラインに引渡す文字列の量でエラーが発生し、リセットがかかってしまう感じなのかな…。&br;
~ 少し調べてみました。どうやら[http://pukiwiki.sourceforge.jp/?%E8%B3%AA%E5%95%8F%E7%AE%B13%2F210 質問箱3/210]と同じ現象で''インライン''が抱える問題のようです。今作成してるunion_table.inc.phpは内部処理にインラインプラグインを使っているため、この問題に引っかかったようです。&br;
Apache2+PHP4の組み合わせでPukiWikiを利用した環境の場合、インラインに引渡す文字列の量でエラーが発生し、リセットがかかってしまう感じなのかな…。&br;
ちなみに確認した環境はPHP4.3.11とPHP4.4.1なので、PHP4とは言い切れないかも…。

***Apacheのエラーログ [#f5d38898]
#pre{{{
[Sun Dec 17 18:35:21 2006] [notice] Parent: child process exited with status 3221225725 -- Restarting.
[Sun Dec 17 18:35:21 2006] [notice] Apache/2.0.55 (Win32) PHP/4.3.11 configured -- resuming normal operations
[Sun Dec 17 18:35:21 2006] [notice] Server built: Oct  9 2005 19:16:56
[Sun Dec 17 18:35:21 2006] [notice] Parent: Created child process 1440
[Sun Dec 17 18:35:21 2006] [notice] Child 1440: Child process is running
[Sun Dec 17 18:35:21 2006] [notice] Child 1440: Acquired the start mutex.
[Sun Dec 17 18:35:21 2006] [notice] Child 1440: Starting 250 worker threads.
}}}

リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS