是否可以在asp.net应用程序中只有一个global.asax文件?

时间:2009-08-08 18:47:08

标签: asp.net virtualhost

我在Web服务器上有一个根目录,该目录链接到许多URL。我想使用global.asax文件的应用程序开始请求事件将请求转移到包含相关网站内容的目录。所以在psuedo代码术语中这样的东西 -

如果URL.Contains(“www.somthing.com”)然后将用户转移到目录x 如果URL.Contains(“www.somthingelse.com”)然后将用户转移到目录y

我以为我能够通过将带有相关代码的global.asax文件放到Web服务器根目录中来实现这一点(我想避免像web.config文件这样的复杂因素,因为它的内容会影响其他我在子目录中的应用程序)。

不幸的是,这种方法似乎不起作用,因为应用程序开始请求事件似乎没有触发。我通过添加default.aspx文件并使其成为根目录的默认文档来解决问题。这似乎有效,我认为这是因为asp.net编译default.aspx文件,然后编译允许事件触发的global.asax文件?

我的解决方法是完成我需要做的最好的方法吗?还是有一种更简单的方法来使用单个文件来触发global.asax事件?

1 个答案:

答案 0 :(得分:2)

听起来你正在寻找一个基于主机头的重定向。

您可以通过配置您的来完成此操作 像this这样的ISA服务器或像this这样的IIS。