您好,我应该只允许特定的 IP 地址(即 HTTP:X-FORWARDED-FOR 地址)访问文件。我已经通过以下方式做到了
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:X-FORWARDED-FOR} !^xxx.xxx.x.xx$
RewriteRule ^$ http://xxx.xxx.x.xx/access_denie.php [R=301,L]
现在我必须允许多个IP,例如yyy.yy.y.yy。我该如何使用 htaccess 来做到这一点
The ^xxx.xxx.x.xx$
你的一部分RewriteCond
只是一个正则表达式。您可以轻松地使用组来添加更多 IP 地址:
^(xxx\.xxx\.x\.xx|yyy\.yy\.y\.yy)$
你会发现我已经逃离了所有.
s 带有反斜杠 - 这是因为.
在正则表达式中具有特殊含义,如果您希望它仅匹配文字,则需要对其进行转义.
特点。
所以你的新RewriteCond
看起来像这样:
RewriteCond %{HTTP:X-FORWARDED-FOR} !^(xxx\.xxx\.x\.xx|yyy\.yy\.y\.yy)$
您可以轻松添加更多 IP 地址,只需将它们分开|
人物。
但请注意,这种方法并不能为您提供任何真正的安全性。欺骗请求来绕过这一点很容易。如果您需要安全性,您应该使用 SSL 和适当的身份验证系统。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)