我们有一个页面,gateway.school.edu,用户必须填写验证码,然后才能被引导到我们的密码重置页面。我希望任何内部流量,我们网络上任何具有 10.、172. 或 192.* IP 的用户代理,都无需填写验证码即可通过。因此,内部用户将导航到 gateway.school.edu,apache 将在其中检查内部 IP,然后将其发送到 reset.school.edu。外部用户必须填写验证码,然后才能被发送到 reset.school.edu
在 apache 中使用 {REMOTE_ADDR} 可以实现吗?类似于:
#gateway.school.edu virtual host
RewriteCond %{REMOTE_ADDR} ^192.*
RewriteRule .* reset.school.edu
还有其他方法可以实现此目的吗?还是重写是最好的方法?从语法上讲,我如何定义 IP 范围?
答案1
这个具体问题的答案是:
#gateway.school.edu virtual host
RewriteCond %{REMOTE_ADDR} ^10\.(.*)$ [OR]
RewriteCond %{REMOTE_ADDR} ^172\.(.*)$ [OR]
RewriteCond %{REMOTE_ADDR} ^192\.(.*)$
RewriteRule .* reset.school.edu [R=301,L]