为什么内容显示为 text/html?

Why is content seen as text/html?

css、Java Web App中的js、jpg等都被视为text/html类型。

例如,如果我输入 url:

domain.com:8080/Application/css/bootstrap.min.css

它作为文本加载

内容类型:text/html;字符集=UTF-8

Java web 应用程序在本地没有问题,但是当我将其上传到生产服务器时出现问题。

所以在当地没问题:

localhost:8080/Application/css/bootstrap.min.css

内容类型:text/css;字符集=UTF-8

几年前一切都很好,直到几天前。

好的,我找到问题了。基本上在我的 SecurityFilter.java class 中,我使用参数在 web.xml 文件上设置,我明确声明所有内容的 ContentType 为 text/html。我现在删除了该行,浏览器可以看到正确的 MIME 类型的所有内容。

public class SecurityFilter implements Filter {
    @Override
    public void doFilter(...) throws ServletException, IOException {
        ...
        response.setContentType("text/html; charset=UTF-8");
        ...
    }
}

奇怪的是,我的代码中有这一行很多年了,但从未引起过问题。我仍然不知道最近几天发生了什么导致它产生问题。如果有人知道原因我晚上会睡得更好