我想要所有 apache 非错误响应都以 content-type 发送'application/json; charset=UTF-8'
。我该怎么做?
我尝试添加:
<VirtualHost *:80>
AddType 'application/json; charset=UTF-8'
</VirtualHost>
但这需要指定文件扩展名,我不想绑定到文件扩展名,因为我不是请求特定的文件,而是请求这样的资源:
http://my.domain.com/rest/articles/
我也尝试过DefaultType
指令:
<VirtualHost *:80>
DefaultType 'application/json; charset=UTF-8'
</VirtualHost>
但这似乎不起作用 -Content-Type:text/html; charset=utf-8
被退回。我遗漏了什么吗?
答案1
您可以使用 Apache 的ForceType
指令,详情请参阅文档。您必须在目录、位置或文件上下文中使用它。对于 JSON,您需要使用ForceType application/json
。因此,在您的 vhost 中,您可能想要执行如下操作:
<VirtualHost *:80>
<Location />
ForceType application/json
</Location>
</VirtualHost>