我期待为大多数互联网提供“正在进行中的工作”页面,同时允许从一些特定的testingIP地址访问站点本身。
这是可以与IIS 7? 你会怎么做呢?
您可以使用IP和域名限制模块,或者下载并安装URL Rewrite 2.0模块并使用它。 这里有两个例子:
我可能会去以下设置:
使用IP和域名限制
2个网站:
- http://www.website.com:没有IP限制,“正在进行中”的内容
- restricted.website.com:适当的IP限制,实际内容
然后我会有根文档(index.aspx,index.php,default.aspx,不pipe),通过使用Request.UserHostName() (如果.NET)或$_SERVER[REMOTE_ADDR] (如果PHP)。
使用URL重写模块
一个可能的select是使用URL重写模块来重写对网站的请求,并以REMOTE_ADDR属性作为条件。
<rule name="ip-rewrite" stopProcessing="true"> <match url="website.com" /> <conditions logicalGrouping="MatchAny"> <add input="{REMOTE_ADDR}" pattern="127.0.0.1" negate="true" /> <add input="{REMOTE_ADDR}" pattern="123.55.44.16" negate="true" /> <add input="{REMOTE_ADDR}" pattern="23.34.48.8" negate="true" /> <add input="{REMOTE_ADDR}" pattern="201.0.245.13" negate="true" /> </conditions> <action type="Rewrite" url="http://www.website.com/inprogress/default.aspx" appendQueryString="false" /> </rule>
这会自动将不是来自4个预定义的IP地址的所有请求重写到/inprogress/default.aspx而不是实际的网站