.htaccess重定向仅在未列出IP地址或不是特定URL时

时间:2010-07-21 07:06:15

标签: .htaccess mod-rewrite redirect

我正在尝试设置暂存子域,并且只想允许访问某些IP地址,但允许所有人访问从/api开始的任何网址。

我下面的内容适用于IP地址,但如果我尝试访问例如/api/projects/api/users且未列出的IP地址,则会重定向。

非常感谢任何帮助。

RewriteEngine On
RewriteBase /

RewriteCond %{REMOTE_HOST} !^11\.11\.11\.11
RewriteCond %{REQUEST_URI} !/api*
RewriteRule ^.*$ http://domain/ [R=302,L]

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

1 个答案:

答案 0 :(得分:1)

您可以在/ api / foo

中放置一个单独的.htaccess文件

您的.htaccess文件可能如下所示: -

order deny,allow
deny from all
allow from 1.2.3.4
allow from 2.3.4.5