SharePoint日历CSS加载异常求助:MIME类型错误问题排查
针对你遇到的问题——日历功能在其他站点正常运行,但你的项目里CSS加载失败,浏览器提示MIME类型不匹配的错误,我整理了几个实用的排查方向:
先确认请求路径的有效性
直接在浏览器地址栏访问报错里的URL:/sites/new/_layouts/15/defaultcss.ashx?ctag=5,看看返回的是正常的CSS样式代码,还是404错误页面、权限提示页面。如果是后者,说明你的项目站点的上下文路径可能不是/sites/new,或者该路径下的资源不存在,导致服务器返回了HTML类型的响应,触发MIME类型错误。检查站点权限配置
确保当前登录用户对目标站点有足够的读取权限。如果权限不足,SharePoint会返回权限验证页面(HTML类型),而不是CSS文件。可以切换到站点管理员账号测试,验证是否是权限问题导致的。规范CSS引用的路径写法
如果你在母版页或自定义布局里硬编码了CSS路径,很容易出现站点上下文不匹配的问题。建议使用SharePoint内置的路径解析表达式,比如:<% $SPUrl:~site/_layouts/15/defaultcss.ashx %>这种方式会自动根据当前站点的URL生成正确的资源路径,避免硬编码带来的适配问题。
排查自定义组件的冲突
你的项目站点是否部署过自定义Web部件、扩展或者解决方案?有些自定义代码可能会拦截HTTP请求,篡改响应内容,导致CSS文件返回HTML。可以尝试暂时停用这些自定义组件,逐步排查出冲突的部分。验证服务器端MIME类型配置
虽然这是SharePoint默认配置,但还是可以检查一下defaultcss.ashx处理程序的MIME类型设置,确保它返回的是text/css。如果之前有过服务器配置修改,可能会导致这个处理程序的响应类型被篡改。
内容的提问来源于stack exchange,提问作者Hira Majid

