首页  >  问答  >  正文

apache - .htaccess如何单独给某个请求设置IP白名单权限?

例如http://demo.com/hello 这条url,我想限制只有211.125.10.5这个IP可以访问,其他IP访问均返回403,该如何写.htaccess

PS1:
/hello不是一个目录,所以不可以用.htaccess基于目录的IP限制

PS2:
网站是基于WordPress的,现已有如下rewrite规则。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

PS3:
刚才尝试了一种方案,但总是500
该方案被否决了,Location指令不能写在.htaccess文件中...

<Location /hello/ >
	Order Deny,Allow
	Deny from all
	Allow from 211.125.10.5
</Location>
PHP中文网PHP中文网2734 天前991

全部回复(1)我来回复

  • 仅有的幸福

    仅有的幸福2017-05-16 17:06:32

    Apache会搜索每个目录下是否有.htaccess,所以,你只要在子目录里设置就行了,限制方法与主目录限制相同。
    或者不使用Location,使用Directory块来限制,或者使用files限制可执行文件。

    回复
    0
  • 取消回复