【发布时间】:2023-03-24 05:29:01
【问题描述】:
是否可以将 PHP 文件的 MIME 类型指定为application/javascript?我有一个输出一些 JavaScript 的 PHP 文件。开启严格的MIME类型检查后,浏览器报错:
“拒绝执行来自 *.php' 的脚本,因为它的 MIME 类型 ('text/html') 不可执行,并且启用了严格的 MIME 类型检查。”
将此添加到 PHP 文件没有帮助:
header("Content-type: application/javascript");
这是我的代码:
<?
header('Content-Type: application/javascript');
include ("../admin/config.php");
include ("../custom_functions.php");
?>
var availableTags = ["BBCD"
<?
$prods=decode_prods();
foreach($prods as $key=>$val){
?>
, "
<?
$prods[$key][name] = preg_replace("/(\015\012)|(\015)|(\012)/","",$prods[$key][name]);
trim($prods[$key][name]);
$prods[$key][name]= str_replace("&", "and", $prods[$key][name]);
$prods[$key][name]= str_replace('"', '', $prods[$key][name]);
echo $prods[$key][name];
?>
"
<? } ?>
];
在阅读 this post 后,我尝试将其添加到 .htaccess - 但没有帮助。
<Files /js/auto.php>
AddType application/javascript .js
</Files>
【问题讨论】:
-
请出示代码
-
显示的代码是all的代码,对吗?我问的原因是一旦输出开始就不能更改标题。如果在此处显示的内容之前没有开始输出,那么您使用的是什么浏览器,并且您确定包含的文件中的标题没有被更改?
-
@bugfroggy 这就是 auto.php 中的所有代码。它从这样的模板文件中调用:
-
这可能是您的问题。使用
application/javascript,因为text/javascript已弃用。我不明白为什么会这样,但值得一试。 -
@bugfroggy 好点 - 但没有没有帮助。
标签: javascript php