是否可以使用 htaccess 的 if 条件
Is it possible to have if condition with htaccess
我想用 .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>
}
你可以,但使用 PHP 代码的 .htaccess 等价物。您当然不能直接在 PHP.
中调用 .htaccess 代码
因此,要根据查询参数的存在有条件地设置 header,您需要执行类似
的操作
RewriteEngine on
RewriteCond %{QUERY_STRING} (^|&)get=[^&]+ [NC]
RewriteRule ^ - [env=GET]
Header set Access-Control-Allow-Origin "*" env=GET
只需确保 mod_headers 模块也已加载。
请注意,当且仅当 get
带有一些值时,上述正则表达式才会通过。我相信 PHP 的 isset($_GET['get'])
会 return true
即使 get
收到 空 。要匹配此行为,您需要改用 (^|&)get(=|&|$)
。
我想用 .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>
}
你可以,但使用 PHP 代码的 .htaccess 等价物。您当然不能直接在 PHP.
中调用 .htaccess 代码因此,要根据查询参数的存在有条件地设置 header,您需要执行类似
的操作RewriteEngine on
RewriteCond %{QUERY_STRING} (^|&)get=[^&]+ [NC]
RewriteRule ^ - [env=GET]
Header set Access-Control-Allow-Origin "*" env=GET
只需确保 mod_headers 模块也已加载。
请注意,当且仅当 get
带有一些值时,上述正则表达式才会通过。我相信 PHP 的 isset($_GET['get'])
会 return true
即使 get
收到 空 。要匹配此行为,您需要改用 (^|&)get(=|&|$)
。