0

特定のリクエストに対していくつかの操作を実行するPHP拡張機能を作成しようとしています。

問題は、ハンドラーがPHPを実行するように正しく設定されていても、要求URLが既存のファイルにマップされていない限り、拡張コードをスキップして「見つかりません」エラーページを表示するだけです。

これはPHPの偽の使用法のように聞こえるかもしれませんが、サーバーにPHPスクリプトが存在するかどうかに関係なく、PHPを実行してほしいと思っています。

リダイレクトを使用せずに、特定の正規表現の一致に対して「見つかりません」エラーページを抑制するために使用できるディレクティブはありますか?そうでない場合、リダイレクトを使用してこれをどのように達成できますか?

4

1 に答える 1

1

たぶん、そのためにErrorDocumentディレクティブを使用できます。
ただし、404のすべての条件を処理する必要があります。最初に要求されたパスは、$_SERVER配列のどこかにあります。したがって、phpスクリプトの「内部」で正規表現を使用できます。

編集:元のパスはに保存され$_SERVER['REQUEST_URI']ます。
また、phpスクリプトは、必要な任意のhttpステータスコード(404、301、200)を送信できます。apache2.4の新しいカスケード定義で何が起こるかはわかりませんが...

于 2012-08-31T10:36:44.770 に答える