ホームページ >ウェブフロントエンド >CSSチュートリアル >自分のサブドメインのフォントを他の Web サイトに埋め込むことができないのはなぜですか?

自分のサブドメインのフォントを他の Web サイトに埋め込むことができないのはなぜですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-29 02:21:09658ブラウズ

Why Can't I Embed Fonts From My Subdomain on Other Websites?

クロスドメインのフォント埋め込み: なぜ同じドメインのみで行うのですか?

Web サイト用のフォント リポジトリを作成しようとしています。 @font-face 宣言を使用します。サブドメイン上に各フォントのフォルダーを設定し、フォントへの絶対リンクを含む font-face.css ファイルを作成し、それが正常に読み込まれることを確認しました。ただし、フォントは他のサイトでは表示されません。

問題:

Firefox では、サブドメインを含むクロスドメインのフォントの埋め込みが制限されています。これは、他の Web サイトからのフォントへの不正アクセスを防ぐためのセキュリティ対策です。

解決策:

サブドメインでクロスドメイン フォントの埋め込みを有効にするには、次の行を追加します。そのサブドメインの .htaccess ファイルへのコード スニペット:

<FilesMatch "\.(ttf|ttc|otf|eot|woff)$">
    <IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin "*"
    </IfModule>
</FilesMatch>

このコードにより、あらゆる Web サイトで次のことが可能になります。 Access-Control-Allow-Origin ヘッダーを「*」に設定して、サブドメインのフォントにアクセスします。

アクセス制御について:

W3C 仕様では、次のいずれかが許可されています。 Access-Control-Allow-Origin のワイルドカードまたは特定のドメインでは、Origin ヘッダーを検証するための明確なメカニズムが提供されません。現時点では、上記の解決策によりすべての Web サイトからのアクセスが許可されるはずです。

以上が自分のサブドメインのフォントを他の Web サイトに埋め込むことができないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。