我有一个 生产环境 网站,使用@ font-face来渲染字体,这在本地环境中工作正常但在上传到实时网站时失败 .
链接到字体文件的CSS文件位于根目录中,并使用以下代码:
@font-face {
font-family: 'ColaborateLightRegular';
src: url('css/fonts/ColabLig-webfont.eot');
src: url('css/fonts/ColabLig-webfont.eot?#iefix') format('embedded-opentype'),
url('css/fonts/ColabLig-webfont.woff') format('woff'),
url('css/fonts/ColabLig-webfont.ttf') format('truetype'),
url('css/fonts/ColabLig-webfont.svg#webfontR2xcGGVv') format('svg');
font-weight: normal;
font-style: normal;
}
该字体位于/ css / fonts /目录中 . 我已经尝试将以下内容添加到.htaccess文件中以尝试修复该问题,但仍无济于事:
<FilesMatch "\.(ttf|otf|woff)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
我真是出于想法!我发现在使用XAMPP查看浏览器时没有问题,我觉得很奇怪,但是当我尝试在我的服务器(也就是Apache)上查看它时,它无法在任何浏览器上运行 .
2 回答
检查文件夹上的CHMOD设置,确保服务器没有向您发送403
检查服务器上字体文件夹和文件的权限 - 应该是0777(读,写和执行) . 这可以通过cPanel 9或等效的文件浏览器来完成 .