В настоящее время я использую BigCartel для разработки веб-сайта.
Я хочу использовать собственный шрифт. Независимо от того, какой сервер я использую (в настоящее время это бесплатный сервер Hostinger), я не могу включить CORS с помощью htaccess.
Добавлено в .htaccess
:
# Header always add Access-Control-Allow-Origin "*"Header always add Access-Control-Allow-Methods "POST, GET, PUT, OPTIONS, PATCH, DELETE"Header always add Access-Control-Allow-Headers "X-Accept-Charset,X-Accept,Content-Type"RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]]
CSS:
@font-face {
font-family: FontName;
src: url(http://WEBSITE_URL.com/fontname.woff);
}
Большая часть бесплатного хостинга не обеспечит поддержку всех файлов. Но поддержка PHP — одна из замечательных вещей. Так что вы можете использовать PHP для обработки файлов в правильном формате.
Так что для вашего вопроса, если у вас есть font-name.woff
, у которого есть application/x-font-woff
в качестве MIME-типа вы можете создать прокси-скрипт PHP, который выполняет что-то вроде этого:
<?php
ob_start();
header("Content-type: application/x-font-woff");
echo file_get_contents("file-name.woff");
?>
Сделайте его универсальным и обслужите все файлы следующим образом:
<?php
ob_start();
header("Content-type: application/x-font-woff");
echo file_get_contents("{$_GET["file"]}.woff");
?>
И назовите это как: font.php?file=file-name
, Надеюсь это поможет.
Кроме того, чтобы включить CORS в файл PHP:
<?php
header("Access-Control-Allow-Origin: *");
ob_start();
header("Content-type: application/x-font-woff");
echo file_get_contents("{$_GET["file"]}.woff");
?>
Других решений пока нет …