我正在使用Apache24
在Windows Server 2016
上部署我的网站来提供静态文件。它们都可以(js,css,图像),但是字体文件。
通过互联网阅读后,我将其添加到httpd.conf
文件中:
<IfModule headers_module>
<FilesMatch ".(ttf|otf|eot|woff|woff2|font.css|css|js)$">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
</IfModule>
和取消注释行:
LoadModule headers_module modules/mod_headers.so
但我仍然收到此错误,其中server_ip是真实的服务器 IP 地址
从源"http://server_ip server_ip:8080"访问源"http://:8080"的字体:请求的资源上不存在"访问控制-允许源"标头。因此,不允许访问源"http://server_ip:8080"。
这是与使用 IP 地址而不是域有关的问题吗?我仍在等待域,所以我必须指向 ip。
我在 apache 配置中缺少某些内容吗?因为我还添加了
<IfModule mime_module>
AddType application/x-font-ttf .ttc .ttf
AddType application/opentype .otf
...
</IfModule>
...
<IfModule rewrite_module>
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
</IfModule>
没有结果。
任何帮助将不胜感激。 谢谢。
这是一个与浏览器有关的问题。
我意识到需要安装 Chrome 插件Allow-Control-Allow-Origin: *