如何使用 IIS7 URL Rewrite 2.0 管理 WinHost 上的子域?

如何使用 IIS7 URL Rewrite 2.0 管理 WinHost 上的子域?

我正在尝试温豪斯我在子域名方面遇到了一些问题。在 WinHost 上,每个托管帐户可以有多个子域名,但每个子域名都指向根网站。例如,您可以拥有 www.example.com、sub1.example.com 和 sub2.example.com,但它们都显示内容http://www.example.com/

其他主机允许您将子域名指向您网站中的子文件夹。这将允许您将 sub1.example.com 指向 /sub1,将 sub2.example.com 指向 /sub2,将 www.example.com 指向 /。

WinHost 建议使用asp/aspx 页面重定向http://sub1.example.comhttp://sub1.example.com/sub1,它指向 /sub1。虽然这可行,但我不希望 URL 中出现两次子域名。

所以我尝试使用 IIS7 URL Rewrite 来指向http://sub1.example.com到 /sub1。Ben Powell 在他的博客。这很好,但 Request.ApplicationPath 现在是 /sub1/path/to/current/page.aspx,这会破坏 ASP.Net 主题(可能还有其他东西)。

我该怎么做才能修复 ApplicationPath?有没有更好的方法来实现这一点?

答案1

除了重定向之外,您还需要在 IIS 中将每个站点标记为应用程序。WinHost 应该有一个控制面板或方法,让您将每个站点标记为自己的应用程序。这将使 /sub1/ 之类的文件夹成为根应用程序。

答案2

我不知道如何修复应用程序路径,所以现在我只是使用 URL 重写模块将 重定向(而不是重写)到http://sub.example.com/abchttp://sub.example.com/sub/abc这不是理想的,但它有效。请参阅我的博客文章了解详情。

相关内容