powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Настройки IIS
20 сообщений из 20, страница 1 из 1
Настройки IIS
    #33210555
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите как сделать так чтоб среда asp.net обрабатывала не только расширения aspx но и url такого вида http://server/dir1/
...
Рейтинг: 0 / 0
Настройки IIS
    #33210716
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый простой способ - в настройках IIS прописать обработчиком ошибок 403.14, 404 и 405 требуемый aspx-файл. Правда будут проблемы с преобразованием входных параметров, т.к. в этом случае они несколько в кривом виде приходят.
...
Рейтинг: 0 / 0
Настройки IIS
    #33210725
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не очень это похоже на простой способ.
Я хочу в apllication_beginrequest поймать обращение к http/server/dir1
и отредиректить куда надо
...
Рейтинг: 0 / 0
Настройки IIS
    #33210735
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
4ARM почему не простой ?
пишете страницу 404.html
в настройках IIS для своего каталога указываете для 404 ошибки эту страницу(404.html). Иначе запросы типа http://localhost/myweb/erunda/ вы не пойматете, так как .net ловит только свои страницы, типа erunda.aspx.
...
Рейтинг: 0 / 0
Настройки IIS
    #33210823
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо, не нравится простой способ - пишите ISAPI-фильтр для этого :).
...
Рейтинг: 0 / 0
Настройки IIS
    #33210826
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, 404 ошибки мало будет.
Если это каталог, т.е. "/" в конце, то будет генериться
...
Рейтинг: 0 / 0
Настройки IIS
    #33210831
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри, отправилось случайно...

...то будет генериться 403.14, а если метод POST, то 405 ошибка.
...
Рейтинг: 0 / 0
Настройки IIS
    #33211048
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-duke Иначе запросы типа http://localhost/myweb/erunda/ вы не пойматете, так как .net ловит только свои страницы, типа erunda.aspx.

Вот об этом то и вопрос. Я уже нашел где прописать новое расширение для asp.net например .ahtm.
А 404 попросту работать не будет если dir1 существует. Да и потом как с этими кодами ошибок ловить параметры post и get запросов приходящих от форм.
...
Рейтинг: 0 / 0
Настройки IIS
    #33211145
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dir1 или не должен существовать или если у него запрещен directory listing, то даже если он существует, можно этот же обработчик на 403.14 ошибку повесить.
POST ловится точно также, GET немного извращается, из имени первого параметра нужно вырезать лишнее. Выведите на тестовой странице список параметров и все будет ясно. В общем есть немного мороки, но все не так страшно.
Другими способами у вас ничего не выйдет. Или ловить ошибку обработчиком или перенаправлять запрос до того, как он дойдет до IIS, т.е. ISAPI-фильтром.
Первый вариант гораздо проще.
Ну или купите готовый коммерческий продукт такого типа.
...
Рейтинг: 0 / 0
Настройки IIS
    #33211560
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтож попробую через ошибки, но вера в чудо еще жива.
...
Рейтинг: 0 / 0
Настройки IIS
    #33211566
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
APM
А 404 попросту работать не будет если dir1 существует.
если поставите в настройках iis для своего каталога - то будет.
Вы попробовали ? Сам ставил минут 5 , перед этим еще 5 минут писал 404.html.
Или вам нужна сложная обработка ? Типа запрос неверного URL и т.д. ?
...
Рейтинг: 0 / 0
Настройки IIS
    #33211589
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-duke
если поставите в настройках iis для своего каталога - то будет.
Вы попробовали ?
Извините, я не совсем понял.

Нашел себе утешение http://www.isapirewrite.com/
хотя очень хотелось обойтись штатными средствами.

Еще раз попдробнее о проблеме.
Я пробую сделать что то вроде http://contest2005.gotdotnet.ru/Request/Tools/UtilitiesLib/183190.aspx

но не хочется url типа /users/1.aspx а хочется типа /users/1/ или users/1

не нашел возможности заставить среду asp.net парсить файлы вне зависимости от расширения, поэтому мой редиректор не работает.

Попробовал уже создать файл 404.aspx
и в нем
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<script runat="server">
    void Page_Load(Object sender, EventArgs e) {
	
  Rewriter.Rewrite();
	

	}
</script>

Почему то не работает.
Если вместо Rewriter.Rewrite(); написать Response.Redirect("my.aspx"); то переадресация идет.

Предполагаю это связано с тем что 404.aspx запускается вне контекста приложения asp.net и поэтому rewriter не "видит" правила из webconfig и не получает HttpContext.Current.Request.Path;
...
Рейтинг: 0 / 0
Настройки IIS
    #33211591
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Был не прав.
rewriter видит web.config но не "видит" что на него пришли со страницы server/dir1/ а видит что на него пришли со страницы /server/404.aspx
что меня не устраивает.

Опять ломаю голову...
...
Рейтинг: 0 / 0
Настройки IIS
    #33212120
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
APM
Извините, я не совсем понял.

отдайте эту заботу IIS и не ломайте голову.
...
Рейтинг: 0 / 0
Настройки IIS
    #33222523
marina milanina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обработчик 404 ошибки для редиректа использовать плохо.
Дело в том, что рушится вся статистика посещений, поскольку в логи IIS записывает url вида /default404.aspx?404;настоящий_урл_запрошенный пользователем.



Есть другой способ: надо настроить IIS на обработку любых запросов библиотекой .NET.

Настройки в IIS 5 и IIS 6 разные. Какой версии ваш IIS?
...
Рейтинг: 0 / 0
Настройки IIS
    #33222547
marina milanina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот настройки для IIS6

Менеджер IIS - > WebApplication1 ->Properties -> Configuration
Около надписи Wildcard application maps жмете кнопку Insert
В поле Executable прописываете адрес библиотеки .NET, например,
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll
Снимаете значок Verify that file exists,
Жмете ОК, и еще раз OK, и еще раз OK

Что надо учесть: желательно снять обработку aspnet_isapi со всех папочек с картинками, css-ками и флешками (чтобы не загружать сервер). Для этого делаете вложенные папочки приложениями (на уровне IIS) и снимаете обработку "всего" библиотекой .NET
...
Рейтинг: 0 / 0
Настройки IIS
    #33223244
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема больше не в логах, а в том, что в приложение url тоже приходит такой кривой, соответственно имя первого параметра GET-запроса будет 404;настоящий_урл_запрошенный пользователем. Она тоже решаемая, хотя и добавляет головной боли.

В принципе способ с обработчиком на типы файлов довольно здравый, но проблем с ним примерно столько же, сколько и с обработчиком ошибок.
1. Как правило, на коммерческих хостингах есть возможность перемапить обработчик ошибок, а вот с обработчиком типов файлов так не получится.
2. Действительно, нужно не забыть убрать маппинг с каталогов, в которых лежит все статическое (а если статическое вперемешку с требующим обработки?).
3. Если каталог существует, то обращение к нему, например /dir1, приведет или к выводу содержимого или к ошибке, а не к перехвату.

Еще один способ, устраняющий большую часть проблем - это использовать готовый ISAPI-фильтр, коих коммерческих навалом. Есть и бесплатные, например здесь и здесь есть бесплатная версия.
...
Рейтинг: 0 / 0
Настройки IIS
    #33223312
marina milanina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Vladich:
кстати интересный факт связанный с использованием обработчика 404
Недавно пришлось проводить предварительный аудит производительности весьма крупного и весьма посещаемого ресурса.

Выяснилось что 20% запросов идут к несуществующему .gif файлику, но поскольку для редиректа используется 404 обработчик, то каждый из таких запросов запускал обработчик.
А в обработчике был цикл по 30 достаточно сложным регулярным выражениям.

В результате улетало в трубу примерно 10% ресурсов сервера ;)

Так что в варианте с обработчиком тоже стоит отключать его на директориях со статикой.
...
Рейтинг: 0 / 0
Настройки IIS
    #33223483
VladiCh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
marina milanina
Выяснилось что 20% запросов идут к несуществующему .gif файлику, но поскольку для редиректа используется 404 обработчик, то каждый из таких запросов запускал обработчик.
А в обработчике был цикл по 30 достаточно сложным регулярным выражениям.


Тоже сталкивался с такой проблемой. У нас она решалась следующим образом - во-первых, резались расширения - gif, jpg, png, swf и т.п.
Во-вторых, в отдельный лог скидывались имена файлов, которые не найдены и не соответствуют ни одному разделу - такая информация довольно оперативно обнаруживалась.
От этой проблемы все равно полностью не избавиться, можно только свести ее к минимуму. Преднамеренными действиями можно все равно будет нагрузить сервер по самое не могу.
Например в случае обработчика на все файлы - если злоумышленник понаставил кучу кривых ссылок на картинки (например преднамеренно на несуществующие картинки в каталоге, на котором установлен обработчик)
А цикл(!) по 30(!) сложным регулярным выражениям - это не перебор? :)
...
Рейтинг: 0 / 0
Настройки IIS
    #33223492
marina milanina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Vladich - не знаю, не мы разрабатывали тот сайт
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Настройки IIS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]