Возможно ли иметь файл global.asax только в приложении asp.net? - PullRequest
0 голосов
/ 08 августа 2009

У меня есть корневой каталог на веб-сервере, который связан с несколькими URL-адресами. Я хочу использовать событие начала запроса приложения для файла global.asax для перенаправления запросов в каталоги, содержащие контент для соответствующих веб-сайтов. Так что в терминах псевдо-кода что-то вроде этого -

Если URL.Contains ("www.somthing.com"), то перенаправить пользователя в каталог x Если URL.Contains ("www.somthingelse.com"), то перенаправить пользователя в каталог y

Я думал, что смогу добиться этого, просто поместив файл global.asax с соответствующим кодом в корневой каталог веб-серверов (я хочу избежать сложностей, таких как файл web.config, поскольку его содержимое повлияет на другие приложения у меня есть в подкаталогах).

К сожалению, этот подход, похоже, не работает, так как событие запроса начала приложения не срабатывает. Я решил проблему, добавив файл default.aspx и сделав его документом по умолчанию для корневого каталога. Кажется, это работает, я предполагаю, что это потому, что asp.net компилирует файл default.aspx и, в свою очередь, компилирует файл global.asax, который позволяет запускать события?

Мой обходной путь - лучший способ выполнить то, что мне нужно, или есть более простой способ заставить события global.asax запускаться с использованием одного файла?

1 Ответ

2 голосов
/ 08 августа 2009

Звучит так, будто вы ищете перенаправление на основе Host Header.

Вы можете сделать это, настроив ISA Server вроде this или ваш IIS вроде this .

...