0

構成に次のルールがあります。

RewriteRule (\w+)\/place_info\/(\d+)(\/.+|\/?)$ $1/place_info.php?id=$2 [QSA]

次の形式の URL を取得するために使用されます

http://www.ourdomain.com/section/place_info/12345/place-name-whatever

内部的に次のように渡します

http://www.ourdomain.com/section/place_info.php?id=12345

place-name-whateverこれは、URL エンコードされ/た文字が含まれている場合を除いて、すべての場合に問題なく機能します。たとえば、これは機能します:

http://www.ourdomain.com/section/place_info/12345/place-name-whatever

そしてこれはうまくいきます:

http://www.ourdomain.com/section/place_info/12345/place-name-whatever/with-slash

ただし、これはしません:

http://www.ourdomain.com/section/place_info/12345/place-name-whatever%2Fwith-slash

ここで何が起こっているのか、さらに重要なことに、それを修正する方法がわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

0

かなり長い間まだ解決されていないmod_rewriteバグに関連しているようです。

残りの行を破棄しても影響を受けます。

于 2012-07-18T11:55:29.210 に答える