我已经在 Apache 服务器(Debian 下)上配置了两个网站(不是我配置的):
beta.mydomain.com
位于/www/sitebeta
mydomain.com
位于/www/site
我还创建了一个新的“登陆页面”,位于/www/sitelanding
我想要实现的是这样配置服务器:
- 如果从预定义的 IP 地址范围进行访问,则将
mydomain.com
指向/www/sitebeta
- 如果
mydomain.com
从其他地方访问域名,它应该指向/www/sitelanding
我该如何实现?我想我必须编辑 apache.conf,但是否还需要任何 DNS 配置?(因为域已经指向该服务器)。我如何通过 .htaccess 限制到这些 IP?
答案1
不需要 DNS 配置 - 您可以使用 mod_rewrite 并使用 RewriteCond 来匹配某些 %{REMOTE_ADDR} 值,然后对 sitebeta 文件夹执行 RewriteRule。
我认为它看起来像 /www/site 文件夹中的 .htaccess 中的以下内容(我没有测试过这个,但我认为它是正确的,或者至少会为你指明方向)。
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.123\.123\.123$ [OR]
RewriteCond %{REMOTE_ADDR} ^234\.234\.234\.234$
RewriteRule (.*) /www/sitebeta/$1 [L]