カテゴリ | エラー・トラブル |
サマリ | ページ名のURLで半角スペースとプラス記号の区別がつかない |
バージョン | 1.5.2 |
投稿者 | 名無しさん |
状態 | 完了 |
投稿日 | |
以下の変更によって
dev:BugTrack/2478 ページ名の半角スペースをURLでは'+'で表すようになりました (RFC 3986)
たとえば "Use PukiWiki" のリンクは https&nop(:);//pukiwiki.osdn.jp/?Use+PukiWiki となります。
しかし、Wikiページ名が"foo + bar"と、半角スペースとプラス記号が混在している場合、リンクがhttp&nop(:);//pukiwiki.osdn.jp/?foo+++barとなってしまい、正しいリンクになりません。
Wikiページ名に半角スペースとプラス記号が混在していても正しいリンクを出力するにはどうすればいいでしょうか。
(commit:ea1b7596d4をrevertして運用していますが、他に良い手段はあるでしょうか)
- メニューの「新規」からページ名を入れるとよいです。ページ名が "foo + bar" の場合、URLは "/?foo+%2B+bar" となります -- umorigu
- 回答ありがとうございました。すみません、伝え方が悪かったです。Pukiwiki のページタイトルの下に表示される URL 文字列でなく、ブラウザの URL 欄に表示される文字列が半角スペースとプラス記号の区別を付けられないことに困っていました。で、あらためて考えると Pukiwiki よりもブラウザ側の問題なので質問は取り下げます。 -- 質問者
- ブラウザは具体的になんでしょうか? "/?foo+%2B+bar" というのはブラウザのURL欄のことを書いていました。Chrome/Firefox/IE/Edgeあたりはこのような動作になっています。 もしかするとSafariはまた違うかもしれません(手元にないので未確認です) -- umorigu
- 原因が分かりました。こちらの環境が問題でした。当方のブラウザもFirefoxですが、導入しているプラグインがURL欄の「%2B」を「+」にしてしまっていました。Firefoxのプラグインの存在をすっかり忘れていました。事前の調査不足でした。申し訳ありません。 -- 質問者
- 原因がわかってよかったです。最近はアドレス欄の表示をブラウザ側で自動でURLデコードするようになっていたりするなどするので、見やすい反面、この機能自体の挙動に悩まされることも多いですね -- umorigu