Смешная обработка ASPX IIS? - PullRequest
       2

Смешная обработка ASPX IIS?

1 голос
/ 14 октября 2010

[Это может быть лучше при сбое сервера, если так, я перенесу вопрос туда - но подумал, что здесь больше разработчиков asp.net, поэтому больше шансов на то, что такое поведение будет замечено кем-то другим]

Я пытался отследить настройку .NET в IIS, которая управляет этим поведением, но безуспешно ...

Короче говоря, у нас работает сервер Server 2008 R1IIS7.Когда мы переходим к URL-адресу формы: http://server/path/webpage.aspx/webpage.aspx,, он обрабатывает страницу правильно и возвращает правильный ответ.Если я попробую это со статической HTML-страницей или ASP-страницей, я получу 404 (ожидается).

Кажется, что нет предела уровню повторения ... http://server/path/webpage.aspx/webpage.aspx/webpage.aspx/webpage.aspx все работает так, как если бы мы сначала перешли на правильный URL (т. Е. Только на одну веб-страницу).aspx).

Это (или, по крайней мере, так должно быть) конфигурация IIS по умолчанию.У кого-нибудь есть идеи, есть ли у нас коробка, которая каким-то странным образом подправлена?

Правки / ответы на вопросы [последнее редактирование @ 16:55]:

  • Использование .NET 2.0
  • Пул приложений IIS настроен как «классический» конвейер
  • IIS настроен для анонимного доступа;использование классического (устаревшего) внешнего интерфейса ASP для аутентификации
  • Это смешанное приложение: у нас есть много устаревших элементов ASP, а также несколько элементов ASP.NET.
  • Никаких пользовательских модулей HTTP не существует.used

В конечном счете, это не вызывает функциональных проблем: но это означает, что анализ журналов отбрасывается, и если мы сможем отключить это (довольно неожиданное) поведение, это будет полезно.

Ответы [ 2 ]

1 голос
/ 14 октября 2010

Это не специфично для IIS7, но IIRC является особенностью работы ASP.NET: скрипт, идентифицируемый первым .aspx, обработает запрос и получит /webpage.aspx в качестве Request.PathInfo; это может произойти с любым, начинающимся с / после имени страницы ASP.NET, таким как .aspx и .asmx, pages. Таким образом, следующий URL также обрабатывается webpage.aspx: http://server/path/webpage.aspx/foobar.

Если вы посмотрите на .asmx веб-сервисы, вы обнаружите, что в примерах запросов используются такие URL: http://server/path/service.asmx/WebMethodName.

0 голосов
/ 14 октября 2010

Вам необходимо предоставить больше информации:

1) Версия ASP.NET

2) Пул приложений IIS и встроенный или классический

3) Без аутентификации, аутентификации Windows или форм

...