すべての着信リクエストを受信し、このリクエストが処理したいものであるかどうかを一連のルールに基づいて決定し、そうでない場合は、通常どおりリクエストを処理するapacheに制御を戻すapache mod_perlハンドラーを使用することは可能ですか?
ユースケース:
index.html(または同様のもの)を提供するためにDirectoryIndexを使用し、perlスクリプトなどにデフォルトのハンドラーを使用するレガシーサイトには、新しくなったurlスキーム(django / catalyst-ish)が与えられています。ディスパッチャーには、着信URLに基づいてディスパッチされるコントローラーにマップされた一連のURLがあります。
ただし、注意が必要なのは、このディスパッチャーを古いサイトと同じ仮想ホストの同じ名前空間内に配置することです。「すべて更新」の移行では、新しいシステムでサイトのパフォーマンスをテストする機会がなく、サイトのサイズが非常に大きいため実行できないため、サイトを1つずつ書き直すことを考えています。
多くの問題の1つは、ディスパッチャがすべてのURLを期待どおりに受信するようになりましたが、DirectoryIndexと静的コンテンツ(ほとんどが別のホストによって提供されますが、すべてではありません)が適切に提供されないことです。ディスパッチャは、一致しないURLに対してApache :: Const :: DECLINEDを返しますが、Apacheは通常どおりにリクエストを処理し続けず、代わりにデフォルトのエラーページを表示します。Apacheは/index.htmlなどを検索しようとしないようです。
これはどのように解決できますか?内部リダイレクトを使用する必要がありますか?ディスパッチャのハンドラスタックを変更しますか?いくつかの巧妙なディレクティブを使用しますか?上記のすべて?まったく不可能ですか?
すべての提案は大歓迎です!