diacritic (á
、ǚ
、´
...)を含む文字列に対応するURLs
をどのように処理するのか疑問に思っています。私たちが主に見ているのは、URLs
であり、発音区別符号文字が最も近い同等のASCII
に変換され、たとえばRånades på Skyttis i Ö-vik
がranades-pa-skyttis-i-o-vik
に変換されていると思います。
ただし、対応する言語によっては、このような変換が正しくない場合があります。たとえば、German
の場合、ü
文字列をBayern München
として表す以下のue
で見られるように、u
ではなく、bayern-muenchen
をURL
に変換する必要があります。
http://www.bundesliga.de/en/liga/clubs/fc-bayern-muenchen/index.php
しかし、私が気づいたのは、ブラウザがASCII
で percent-encoded の場合に非URL
文字をレンダリングできることです。これは、Wikipedia
が選択したアプローチです。たとえば、http://de.wikipedia.org/wiki/FC_Bayern_M%C3%BCnchen
次のようにレンダリングされます。
したがって、URL
スラッグを作成するための次のアプローチを検討しています。
-(1)_ASCII
以外の文字を推奨のASCII
表現に置き換えながら文字列を変換します:Bayern München
-> bayern-muenchen
-(2)も文字列をpercent encoding
に変換します:Bayern München
-> bayern_m%C3%BCnchen
-バージョン(1)からバージョン(2)への301
リダイレクトの作成
バージョン(1)URLs
はマーケティング目的で使用できます(例:mywebsite.com/bayern-muenchen
)が、ブラウザーバーに表示されなくなるURLs
はバージョン(2)URLs
(例:mywebsite.com/bayern-münchen
)です。
このアプローチの特定の問題を予見できますか? (ウィキペディアはそれをしていないので、URLs
を販売する必要がないという事実は別として、なぜだろうかと思います)
URLで国際文字を使用する場合、注意すべき問題がいくつかあります。
http://www.dmoz.org/World/Japanese/オンラインショップ/地域別・エスニック/アジア/日本/
http://www.dmoz.org/World/Japanese/%E3%82%AA%E3%83%B3%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%97/%E5%9C%B0%E5%9F%9F%E5%88%A5%E3%83%BB%E3%82%A8%E3%82%B9%E3%83%8B%E3%83%83%E3%82%AF/%E3%82%A2%E3%82%B8%E3%82%A2/%E6%97%A5%E6%9C%AC/
URLの発音区別記号を削除しても問題ありませんが、すべての国際文字(中国語や日本語など)で使用できるわけではありません。言語に依存する場合もあります。ドイツ語ではü
はue
に置き換えられますが、他の言語では単なるu
に置き換えられます。
私は最初のアプローチに行きます、すなわち:
そうすれば、訪問者はあなたのURLを読むことができ、検索エンジンの食べ物が詰め込まれます。