Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Вопрос по загрузке файла на сервер


Автор: AleXGray 4.12.2007, 19:18
Можно ли сделать так, чтобы при загрузке слишком большого (больше чем прописан лимит в конфиге) файла на сервер вместо стандартного "невозможно отобразить страницу" все таки была та страница которую я хочу поставить?
Конечная цель - сообщить пользователю, что он заливает слишком большой файл.
Если нет - как в этом случае поступают вообще?

Автор: tol05 4.12.2007, 19:43
Это настраивается в конфиг-файле
http://msdn2.microsoft.com/en-us/library/h0hfz6fc.aspx

Автор: AleXGray 4.12.2007, 23:25
неа... 
любая другая ошибка - да... 
а эта - нет...

Автор: tol05 4.12.2007, 23:34
ну тогда обрабатывай событие Error на странице или в Global.asax вообще, анализируй что за ошибка (тут полная свобода для твоей фантазии), и если это она (та самая! smile ) то делай редирект на свою страницу.

Автор: AleXGray 5.12.2007, 13:27
Та какая разница, хоть мытьем, хоть катаньем...

На сервере я могу ее ловить где угодно и как угодно, но только на клиент передать не получается....

неужели никто не понимает о чем речь? smile 

А проблема между тем интересная... smile 

Автор: tol05 5.12.2007, 14:31
Да это ты походу не понимаешь... 

Тебе нужно
Цитата(AleXGray @  4.12.2007,  18:18 Найти цитируемый пост)
Конечная цель - сообщить пользователю, что он заливает слишком большой файл

На сервере возникла в какой-то момент ошибка, причем
Цитата(AleXGray @  5.12.2007,  12:27 Найти цитируемый пост)
На сервере я могу ее ловить где угодно и как угодно

ты ее поймал.


Вот и делай юзеру Redirect на свою страницу, где будет написано "Дорогой юзер!!!! Мы любили тебя всегда, но сейчас - любим особенно остро!!! ...." и все остальное bla-bla-bla, которое ты хочешь
Цитата(AleXGray @  4.12.2007,  18:18 Найти цитируемый пост)
сообщить пользователю


Автор: AleXGray 5.12.2007, 19:17
Редирект в данном случае не сработает. 
В этом легко убедиться, проделав данный опыт самостоятельно. (Благо много времени это не займет) Киньте на стр. FileUplod напишите обработчик загрузки куда-нить... И попробуйте вывести свое сообщение об ошибке, при загрузке большого файла.
Очень хотелось бы  увидеть...

Автор: tol05 5.12.2007, 23:07
Да, должен согласиться с тем, что эта проблема (именно для этой ошибки) не лечится smile 
Хотя другие - без проблем.

Гугл привел к таким выводам:
- страница не может быть отображена не потому что сервер не делает редирект (с этим все нормально как раз), а потому что IIS сбрасывает соединение с клиентом. И ошибка-то в браузере не asp-шная вываливается, а IIS-а...
- лекарства нет. Так IIS с хакерами борется, так что тут ... не до наших красивых страниц smile


Автор: AleXGray 5.12.2007, 23:24
даже не знаю как можно помечать его как решенный... smile 
Спасибо, что затратили время. 
В принципе как полумера возможно могла бы сработать проверка javascript размера загружаемого файла (дабы в принципе остановить загрузку еще на клиенте), 
но это только для ИЕ опять же... остальным стандарты безопасности не дадут

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)