【问题标题】:Subdomain to point to subdirectory of main site?子域指向主站点的子目录?
【发布时间】:2010-10-17 03:22:30
【问题描述】:

我的网站运行在:

www.example.com

我也有这个其他域:

www.example.net

是否可以将“www.example.net”指向“www.example.com”的子目录?例如:

www.example.net-> www.example.com/other

?

这不仅仅是重定向,我需要提供页面并在用户的浏览器中查看“www.example.net”。

你怎么看?

我们使用 IIS7,一切都是 ASP.NET(aspx 页面、ascx 控件等)。

【问题讨论】:

  • 小心发布随机示例域:您确定您知道它们指向的位置吗?使用“示例”作为示例域并参见 rfc 2606

标签: asp.net iis dns subdomain


【解决方案1】:

使用ISAPI Rewrite

[ISAPI_Rewrite]

RewriteCond  Host:  (?:www\.)?other\.com
RewriteRule  (.*)   http://www.domain.com/other$1 [I,L]

【讨论】:

【解决方案2】:

您正在寻找两种方法:

  • 网址重写器
  • Server.Execute 方法

第一个是一个httpmodule,它在不更改地址栏中的url的情况下静默重定向请求,第二个是您可以在aspx代码中调用的方法。我认为后者只有在您在同一个应用程序中工作时才有用,所以我会使用 URL 重写器。

在 www.iis.net afaik 上有一个官方的 iis7 URL 重写器。

-奥辛

【讨论】:

  • 谢谢,但是 URL 重写可以跨 IIS7 中的不同应用程序工作吗?我应该如何在 IIS 中设置它?我为 www.other.com 创建了一个新应用程序,并在那里设置 URL 重写?
【解决方案3】:

两个问题:

  1. 能否在 IIS 中将它们设置为两个不同的网站?
  2. 如果有人访问了example.net/page.htm,会不会和example.com/other/page.htm一样?

如果这两个答案都是肯定的,为什么不在 IIS 中设置一个新网站并将其指向“其他”文件路径。

【讨论】:

  • 两个答案都是肯定的。它会从“主”/根站点继承 web.config 和其他配置吗?或者我需要在 /other 中保留其他配置文件?
  • 好点...它不会继承配置文件。 “其他”目录中需要有一些。
  • 谢谢。对此还有另一个限制,因为我们的控件存储在主网站 /controls 文件夹中。如果我将“其他”域指向 /other,并在 /controls 处引用控件,它将找不到它 - 我刚刚测试过,它会显示类似“解析器错误,找不到文件”之类的内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-21
  • 2014-01-28
  • 1970-01-01
  • 1970-01-01
  • 2012-01-21
  • 2015-08-26
  • 2019-04-29
相关资源
最近更新 更多