サイドバーのカスタムリンクを保存する際に、クエリパラメーター内にサイト自体のホスト名を含む外部リンクを設定すると、ホスト名がクエリパラメーターから不正確に削除され、URLが壊れます。
再現手順
- サイドバー設定に移動し、カスタムリンクを追加/編集します
- URLを、クエリパラメーターにサイトのホスト名を含む外部リンク(例:自身のサイトにリダイレクトするYouTubeのリダイレクトURL)に設定します
- 保存します
期待される動作
クエリパラメーター内のホスト名を含む完全なURLが、入力されたとおりに保持されます。
実際の動作
サイトのホスト名がクエリパラメーターから削除されます。例えば、クエリパラメーターの部分が ?q=https://mysite.com/some-path/ から ?q=/some-path/ に変更され、壊れたリダイレクトURLが生成されます。
ユースケース
当社のフォーラム(teskas.net、テスラオーナーコミュニティ)には、Tesla車載ブラウザでフルスクリーンモードを起動するためにYouTubeリダイレクトエンドポイントを使用するサイドバーリンクがあります。リダイレクトを機能させるには、クエリパラメーターにホスト名を含む完全なサイトURLを含める必要があります。
回避策
クエリパラメーター内のホスト名部分をURLエンコードし、フォームの正規化をバイパスしてデータベースに直接書き込みます。
環境
- セルフホスト、Discourse v2026.3.0-latest