为什么将内容视为text / html?

时间:2019-04-18 16:17:00

标签: html css tomcat8

Java Web App中的

css,js,jpg等都被视为text / html类型。

例如,如果我输入网址:

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

它作为文本加载

内容类型:text / html; charset = UTF-8

Java Web应用程序在本地很好,但是当我将其上传到生产服务器时,就会出现问题。

所以在本地就可以了:

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

内容类型:text / css; charset = UTF-8

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

1 个答案:

答案 0 :(得分:0)

好的,我发现了问题。基本上在我的SecurityFilter.java类(使用参数在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");
        ...
    }
}

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