请参阅SetEnvIf
指令,它根据请求的属性定义环境变量,例如Remote_Addr
(发出请求的客户端的 IP 地址)...
SetEnvIf Remote_Addr ^192\.168\.0\. LOCAL_LAN=1
Run Code Online (Sandbox Code Playgroud)
...或者Server_Addr
(接收请求的服务器的 IP 地址)...
SetEnvIf Server_Addr ^192\.168\.0\.1$ SITE_PROFILE=PRODUCTION
SetEnvIf Server_Addr ^192\.168\.0\.2$ SITE_PROFILE=DEVELOPMENT
Run Code Online (Sandbox Code Playgroud)
请注意,第二个参数SetEnvIf
是正则表达式,因此如果您想使用裸 IP,请格外小心,因为像 192.168.1.1 这样的模式(虽然看起来比我上面所做的转义点要干净得多)也会最终出现匹配 192.168.101.10。
更新:
SetEnvIf
无法访问 QUERY_STRING,但根据文档:-
有关如何匹配查询字符串的更多信息,请参阅mod_rewrite的RewriteCond指令。
所以像...
RewriteCond %{REMOTE_ADDR} ^192\.168\.0\.
RewriteCond %{QUERY_STRING} (^|&)debug=
RewriteRule . - [E=LOCAL_LAN_AND_DEBUG:1]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6560 次 |
最近记录: |