允许基于 HTTP:X-FORWARDED-FOR 的 htaccess 访问

2024-03-08

您好,我应该只允许特定的 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(使用前将#替换为@)

允许基于 HTTP:X-FORWARDED-FOR 的 htaccess 访问 的相关文章

随机推荐