是否可以根据htaccess中的UAGENT设置标头

时间:2017-07-21 18:36:39

标签: apache .htaccess mod-headers

因为微软互联网浏览器和微软边缘不支持内容安全策略版本2,或者在IE的情况下,根本不支持它我想根据用户更改内容安全策略剂。这对于PHP来说相当简单,但我想用.htaccess文件来做这件事。问题是;这有可能吗?到目前为止,我发现了很多重写规则,但没有mod_headers这样做。

搜索类似的内容:

Header set Content-Security-Policy: ...

<UserAgentMatch "(Edge|Internet Explorer)$">
   Header unset Content-Security-Policy
</UserAgentMatch> 

任何人都知道如何才能做到这一点以及它是否可能?

更新

Walf的答案给出了内部服务器错误,但经过一些微调导致了一个解决方案。对于那些寻找相同代码的人来说。

 <If "%{HTTP_USER_AGENT} !~ /(MSIE|Edge)s*/i">
   header always set Content-Security-Policy "..." 
 </If>

1 个答案:

答案 0 :(得分:1)

尝试仅在那些浏览器时设置标题?

<If "%{HTTP_USER_AGENT} !~ /\s+(?:MSIE\s+\d|Edge\/)/">
    Content-Security-Policy: ... 
</If>