我想用.htaccess
编写简单的if / else条件这是用php编写的代码。
if(isset($_GET['get'])){
header('Access-Control-Allow-Origin: *');
}
是否可以与htaccess具有相同的条件
if(isset($_GET['get'])){
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
}
答案 0 :(得分:5)
您可以使用PHP代码的.htaccess等效项。你当然不能直接在PHP中调用.htaccess代码。
因此,要根据查询参数的存在有条件地设置标题,您可以执行类似
的操作RewriteEngine on
RewriteCond %{QUERY_STRING} (^|&)get=[^&]+ [NC]
RewriteRule ^ - [env=GET]
Header set Access-Control-Allow-Origin "*" env=GET
确保还加载 mod_headers 模块。
请注意,当且仅当get
带有某些值时,上述正则表达式才会通过。我相信,即使isset($_GET['get'])
收到空,PHP true
也会返回get
。要匹配此行为,您需要使用(^|&)get(=|&|$)
代替。