IIS多域重定向

时间:2008-11-08 23:37:32

标签: iis

我目前有2个域名,我想设置不同的网站。我目前正在寻找使用一些适合我当前需求的免费托管,但是没有给我任何方式将“mydomain.com”指向实际网站。相反,我必须让用户更长,更难记住网址。

我建议的解决方案是将我的域指向我的家庭IP并通过IIS托管一个小型ASP.NET应用程序,该应用程序包含一个重定向页面,只需重定向到相应的站点。 ASP.NET中是否有一种方法可以识别请求了哪个域URL以了解将页面重定向到何处?

2 个答案:

答案 0 :(得分:2)

以下是一种方法(如果您托管多个域,则由1and1.com推荐)。把它放在网络空间的根部。您的所有网站都将指向此根目录。下面的脚本会将请求转发到正确的子文件夹。这是一种黑客行为,但如果您无法完全控制IIS设置,这将有效。

将此文件命名为default.asp:

<%EnableSessionState=False

host = Request.ServerVariables("HTTP_HOST")

if host = "website1.com" or host = "www.website1.com" then
response.redirect("http://website1.com/website1/default.aspx")

elseif host = "website2.com" or host = "www.website2.com" then
response.redirect("http://website2.com/website2/default.aspx")

else
response.redirect("http://website1.com/")

end if
%>

答案 1 :(得分:1)

从asp.net代码中,您可以从请求对象访问主机:

if(Request.Url.Authority == "www.site1.com")
    Response.Redirect(...);

如果您有权访问IIS服务器,您还可以设置两个具有不同绑定主机名的站点,并根据需要重定向。