0

印刷する QR コードを送信したユーザーがいて、埋め込まれた URLéの末尾にアクセント付きの e ( ) が含まれています。リンクは、パーマリンクをサニタイズする (アクセント付き文字などを削除することによって) ワードプレス サイトへのリンクであるため、ワードプレスでは許可されないため、単純に URL を変更して を含めることéはできません。その結果、 を含む URL は、éを使用する目的のパーマリンクと一致せずe、404 が返されます。

mod_rewrite誤ったものを特定してéに変更する方法はありeますか? この特定のケースでは、éは URL の末尾にのみ発生し、 に切り替える必要があるだけですeが、一般的なケースは興味深いものです。

私が試したことは

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
    # if a é is encountered at the end of a URL, switch it to an e
    RewriteRule ^(.+)[é] $1e [NE]
 </IfModule>

しかし運がない。これは、 が実際には としてではなく、 のエンコードされたバージョンとしてé送信されているという事実に関係していると思われますが、よくわかりません。éé

誰かが私を正しい方向に導くことができますか?

4

2 に答える 2

0

これでうまくいったようです」

RewriteRule ^(.*)é(.*)$ /$1e$2 [R=301,L]

みんな、ありがとう!

于 2013-02-08T18:30:17.633 に答える
0

問題はおそらく、Apache が文字を実際には別のものとして認識してéいないことです。試してみたところ、実際にアパッチというキャラクターは でしたé

代わりに次のルールを試してください。

RewriteRule (.*)é $1e

それが役に立てば幸い。

于 2013-02-08T17:47:44.393 に答える