如果我有多个指向同一个站点的域名。
如果我有一个名为admin-domain.com
我只想允许admin-domain.com/admin/
但不允许anything-else.com/admin/
这也需要.htaccess
另外,没有实际的admin
目录,但有很多 URL,...com/admin/products/edit/54
因为我正在使用 CakePHP 框架,该框架已经使用 htaccess 来处理这样的 URL。我只想将管理员访问权限限制为 1 个域。
答案1
编辑 Cake webroot 目录中的 .htaccess 文件:
RewriteEngine On
RewriteCond %{HTTP_HOST} !=admin-domain.com
RewriteRule ^admin/.*$ - [F]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
答案2
如果您想将 www 添加到此处。您可以使用:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^http://(www\.)?admin-domain\.com
RewriteRule ^admin/.*$ - [F]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
请记住,推荐代理可能会被欺骗。;-)