apexドメイン(CORS)を使用したフォントのダウンロードに失敗する

こんにちは。https://wingsoffire.forum に 3.5.0.beta3-dev の Discourse インスタンスがあります。インスタンスは www サブドメインの下に設定されていますが、Cloudflare CNAME フラット化を使用してルートドメインを使用しています。

フォントがダウンロードできないこと以外はすべて期待どおりに機能しています。このエラーは LibreWolf 137.0.1-1 で表示されます。

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://wingsoffire.forum/fonts/Roboto-Bold.woff2?v=0.0.18. (Reason: CORS header ‘Access-Control-Allow-Origin’ does not match ‘*, https://www.wingsoffire.forum, https://wingsoffire.forum’).\ndownloadable font: download failed (font-family: "Roboto" style:normal weight:700 stretch:100 src index:0): bad URI or cross-site access not allowed source: https://www.wingsoffire.forum/fonts/Roboto-Bold.woff2?v=0.0.18

および、標準の Ungoogled Chromium 135.0.7049.84 では次のようになります。

Access to font at 'https://wingsoffire.forum/fonts/Roboto-Bold.woff2?v=0.0.18' (redirected from 'https://www.wingsoffire.forum/fonts/Roboto-Bold.woff2?v=0.0.18') from origin 'https://wingsoffire.forum' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header contains multiple values '*, https://www.wingsoffire.forum, https://wingsoffire.forum', but only one is allowed.
GET https://wingsoffire.forum/fonts/Roboto-Bold.woff2?v=0.0.18 net::ERR_FAILED 200 (OK)

サイトにアクセスしても特定のフォントのダウンロードが見当たりませんが、www.wingsoffire.forumから読み込まれているリソースと、ほとんどがwingsoffire.forumから読み込まれているリソースは確認できます。
エラーメッセージを見ると、このフォントもリダイレクトされているようです。それが問題の原因かもしれません。

以下のコマンドを実行してください。

./launcher enter app

次に

discourse remap //www.wingsoffire.forum/ //wingsoffire.forum/
「いいね!」 1

ありがとうございます!

//www.wingsoffire.forum/ のすべての出現箇所を //wingsoffire.forum/ に書き換えます
'default' DB で実行します
このタスクはデータを書き換えますが、よろしいですか(YES と入力してください): YES

default のテーブルを再マッピング中…

post_hotlinked_media=4
post_revisions=12
post_search_data=2
posts=126
site_settings=1
stylesheet_cache=825
topic_links=36
user_histories=10
完了

しかし、再起動や再構築を行っても変更がありません。同じエラーが表示されます。

こちらが管理パネルのフォント選択メニューです。

https://wingsoffire.forum/fonts/Roboto-Regular.woff2?v=0.0.19 からフォントファイルをダウンロードできますが、壊れているようです。

Cloudflare のキャッシュをパージしてみてください。

「いいね!」 1

これで解決しました!ありがとうございます。まさかそんな方法があるとは思いませんでした。

イースターおめでとうございます!

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.