我使用了一个azure cdn来提供静态文件,其中之一就是bootstrap.css。所以在我的网页上我有一个链接
<link rel="stylesheet" href='//<cdn>/lib/bootstrap/dist/css/bootstrap.min.css)' crossorigin="anonymous" />
这将正确加载,但在bootstrap.css文件中有对字体文件的引用。这些是从cdn端点请求的,如下所示
http://<cdn>/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2'
Origin: http://<my website domain>
Referer: http://<cdn>/lib/bootstrap/dist/css/bootstrap.min.css
但我仍然收到CORS错误
Access to Font at 'http://<cdn>/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2' from origin 'http://<my website domain>' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://<my website domain>' is therefore not allowed access. The response had HTTP status code 404.
我将CORS配置为始终为任何域提供服务,如下所示
Startup.cs - ConfigureServices
services.AddCors(options =>
{
options.AddPolicy("AllowAll",
builder =>
{
builder
.AllowAnyOrigin()
.AllowAnyMethod()
.AllowAnyHeader()
.AllowCredentials();
});
});
在Startup.cs中,配置
app.UseCors("AllowAll");
获取bootstrap.css的初始请求返回一个响应头
Access-Control-Allow-Origin: http://<my website domain>
据我所知,它的设置是正确的,但它似乎不工作,任何想法,我做错了..?
发布于 2018-07-30 02:46:19
您是否已尝试将以下内容添加到webconfig中?
<system.webServer>
<staticContent>
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
</staticContent>
</system.webServer>
https://stackoverflow.com/questions/51579702
复制相似问题