我有这个httpd.conf
:
<VirtualHost xx.xxx.xx.xxx>
Options All +ExecCGI
ServerAdmin hostmaster@thehost.com
DocumentRoot /var/www/html/domain.com
ServerName dl.domain.org
DirectoryIndex dlindex1.html
</VirtualHost>
...这很好(我需要作为DirectoryIndex
我们的 'dl.domain.org' 子域的),但现在我还需要DirectoryIndex
根据 IP 地址更改它,使用.htaccess
. 这可能吗?
其他 SO 帖子告诉我,我不能DirectoryIndex
有条件地设置..而是必须使用RewriteRule
. 如果这是真的,好的,但是什么RewriteCond
和RewriteRule
?我在 Apache 中很菜鸟,但无论如何我尝试了很多东西,包括(实际 IP 是我们 2 个开发人员的 IP):
RewriteCond %{REMOTE_ADDR} ^111\.222\.333\.444$ [OR]
RewriteCond %{REMOTE_ADDR} ^555\.666\.777\.888$
RewriteCond %{SERVER_NAME} ^dl.domain.org
RewriteRule ^(.*)/$ $1/dlindex2.html
..甚至只是(作为绝对测试):
RewriteCond %{REMOTE_ADDR} ^555\.666\.777\.888$
RewriteRule (.*)/dlindex1.html$ $1/dlindex2.html
但似乎无论我尝试什么,它都只是提供DirectoryIndex dlindex1.html
as per httpd.conf
,而不是dlindex2.html
当开发人员 IP 调用时,我希望作为该子域中的默认页面提供服务。
任何人都可以指出我可以做些什么来获得我所追求的吗?即: ...实际上,甚至只是有效地,DirectoryIndex
根据IP地址进行更改,使用.htaccess
,在飞行中?