在安全检查期间,其报告说js和css文件缺少“ Content-Type HTTP标头缺少字符集属性”。
请检查以下屏幕截图:
在我添加字符集之前,我的HTML如下所示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="/backend/web/assets/3faf0a44/jquery.js"></script>
</head>
</html>
然后我在
中添加了charset =“ UTF-8”<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="/backend/web/assets/3faf0a44/jquery.js" charset="UTF-8"></script>
</head>
</html>
在响应标题中未添加静态字符集,请检查以下屏幕截图:
那我该怎么做,以便我的Content-Type标头更改为以下内容:
content-type:应用程序/ javascript; charset = utf-8
答案 0 :(得分:1)
让我尝试回答,您可以通过编辑apache2.conf
(对于Debian像OS)或httpd.conf
(CentOS象OS)并添加以下几行来实现:>
#Set the correct Char set so don't need to set it per page.
AddDefaultCharset utf-8
#for css, js, etc.
AddCharset utf-8 .htm .html .js .css
来源:
答案 1 :(得分:0)
因此将其添加到html中不起作用的原因是,它不会告诉服务器任何信息,仅告诉浏览器后者下载后何时解析文件,并且仅决定解析元标记。 。 (主要的)
但是,如果您要发送数据作为http标头的一部分,并使用php来提供页面/站点/文件,则您需要执行 header()命令,将其放在其中将被附加到http标头上。您可以多次使用此命令,以添加新的位。但是您必须将所有对该函数的调用放在输出数据的任何内容之前。一旦php必须输出某些内容,它将进行编译并在该点将标头与输出一起发送,因此无法对其进行进一步的更改。
所以请尝试在文件顶部
<?php
header('charset=UTF-8');
?>
我想那会做你想要的。