0

我有一个最近被移动到负载均衡器后面的站点。在我的客户尝试使用某些需要很长时间才能完成的功能之前,这不是问题 - 这显然会达到负载平衡器的超时并且操作失败。我知道理想情况下,函数会被重写以更快地运行,或者使用后台进程,但客户现在不愿意为此付费,因此设计了一种解决方法。

我能够创建一个直接访问服务器 IP 的 URL,绕过负载平衡器,但我不希望普通用户能够从该 URL 访问该站点。因此,我正在尝试创建一个 .htaccess 规则,该规则将用户 301 访问到站点的主 URL,除非他们从管理页面查看它。据我所知,正确的格式应该是:

RewriteCond %{HTTP_HOST} bypass.mydomain.com
RewriteCond %{REQUEST_URI} !^admin
RewriteRule (.*) http://www.mydomain.com/$1 [r=301,L]

根据我的理解,这应该是:

  • 如果用户在 bypass.mydomain.com
  • 并且访问的 URI 不是以“admin”开头
  • 将用户从 bypass.mydomain.com 转发到 www.mydomain.com

但是,这似乎不起作用。相反,它每次都转发。有任何想法吗?

4

1 回答 1

0

你可能已经检查过了,但你有任何 .htaccess 文件在工作吗?如果不是,这可能是由 allowoverride 参数引起的。查看文档

亚历克西斯

于 2012-06-05T14:38:35.740 回答