0

私は、ファイルの書き換えを除外する正規表現の作成に本当に悩まされています。

CherokeeをWebサーバーとして使用しており、http://example.com/123のようなリンクをhttp://example.com/get.php?short=123に変更したいと考えています。

私の問題は、ファイルのスイッチを作成し、ファイルを作成したくないということです。

/([^.]+)=> /get.php?short=$1

/([。] +)=> / $ 1

2番目はどういうわけか最初のものを除外していると思いますが、私は見つけることができません。

これを修正する方法またはより良い解決策はありますか?

ポール

4

2 に答える 2

1

同じ仮想サーバーの動作ルールに、「ファイルが存在する」と一致する、より優先度の高いルールを追加する必要があります。ほとんどの場合、「静的コンテンツ」ハンドラーを使用する必要があります。

このようにして、動作ルールが評価されると、静的ファイルがそのルールと照合されます(そして送信されます)。リクエストが静的ファイルを対象としない場合は常に、正規表現ルールが配置されている残りの動作リストに対して評価され続けます。

一部の人々が今でも慣れているものとは異なりますが、チェロキーの動作リストは、Apacheの対応するもの(すべてが1つの文字パラメーターの束で一緒に定義される)よりもはるかに直感的で強力です。

于 2010-11-11T06:17:08.200 に答える
0

あなたはおそらく欲しい:

RewriteCond -f
于 2010-11-10T23:11:39.080 に答える