资源解释为样式表,但使用 MIME 类型 text/html 传输
Posted
技术标签:
【中文标题】资源解释为样式表,但使用 MIME 类型 text/html 传输【英文标题】:Resource interpreted as stylesheet but transferred with MIME type text/html 【发布时间】:2012-05-20 04:26:02 【问题描述】:这是我的html:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv = "Content-Language" content = "en"/>
<meta http-equiv = "Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="/xxx/app/www/style.css">
现在,当我加载页面时,Safari 的检查器会给我:
我正在使用 MAMP 在本地主机上工作。我不确定要修改什么才能使其正常工作。我读到这可能是某种服务器问题。
我该如何解决?
【问题讨论】:
类似问题(如果不完全一样) --> ***.com/questions/3467404/… 查看此答案***.com/a/37024887/4762396 这能回答你的问题吗? Resource interpreted as stylesheet but transferred with MIME type text/html (seems not related with web server) 【参考方案1】:在您的根文件夹中创建一个.htaccess
文件(或更新现有的),并在其中包含这一行
AddType text/css .css
这将告诉 apache 为 .css
文件发送正确的 content-type
标头
【讨论】:
我认为正确的方法是 AddType text/css css without the dot 在 Windows 上怎么样?我正在运行 Django 服务器,在我将 Debug 标志设置为 False 后发生了这种情况【参考方案2】:有可能不仅仅是 css 资源被错误地解释了。这可能是您的网络服务器配置的问题。
检查的最佳方法是转到 Chrome -> 网络选项卡并检查每个请求的响应部分。
您也可以使用终端运行$ curl -I http://path_to_file_or_page
并查看响应,您应该以以下格式查看它,例如Content-Type: image/jpeg
所以,如果 webserver (apache) 会为所有文件执行此操作,那么您可以尝试通过以下方式解决问题:
检查您的/etc/apache2/apache2.conf
如果有任何SetHandler application/x-httpd-php
行,请尝试对其进行评论,然后通过$ sudo system apache2 reload
重新加载您的apache
如果问题仍然存在,请告诉我们。
【讨论】:
【参考方案3】:可能是您的网络服务器配置正确,但它确实返回的是 HTML 而不是 CSS。
检查您的路径、拼写、大小写等是否正确。直接点击 URL 看看返回的内容。您的网络服务器可能会响应错误页面 (HTML) 和 200-Ok
而不是 404-Not Found
。
我并不是说这曾经发生在我身上......
【讨论】:
以上是关于资源解释为样式表,但使用 MIME 类型 text/html 传输的主要内容,如果未能解决你的问题,请参考以下文章
资源解释为样式表,但使用 MIME 类型 text/html 传输
资源解释为样式表,但使用 MIME 类型 text/javascript 传输
Springboot - 资源解释为样式表,但使用 MIME 类型 text/html 传输
Springboot - 资源解释为样式表,但使用 MIME 类型 text/htm 传输