Kal*_*lai 2 php apache .htaccess mod-rewrite
嗨,我应该只允许特定的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]
Run Code Online (Sandbox Code Playgroud)
现在我必须允许它为多个ip,例如yyy.yy.y.yy.我怎么能用htaccess做到这一点
^xxx.xxx.x.xx$
你的部分RewriteCond
只是一个正则表达式.您可以轻松使用组添加更多IP地址:
^(xxx\.xxx\.x\.xx|yyy\.yy\.y\.yy)$
Run Code Online (Sandbox Code Playgroud)
您会注意到我已经.
使用反斜杠转义了所有s - 这是因为.
在正则表达式中有特殊含义,如果您希望它只匹配文字.
字符,则需要对其进行转义.
所以你的新版本RewriteCond
会是这样的:
RewriteCond %{HTTP:X-FORWARDED-FOR} !^(xxx\.xxx\.x\.xx|yyy\.yy\.y\.yy)$
Run Code Online (Sandbox Code Playgroud)
您可以轻松添加更多IP地址,只需将它们与|
字符分开即可.
但请注意,这种方法并不能为您提供任何真正的安全保障.欺骗一个请求来解决这个问题会很容易.如果您需要安全性,则应使用SSL和适当的身份验证系统.
归档时间: |
|
查看次数: |
10178 次 |
最近记录: |