информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
подразумевалось на стороне клиента 09.09.03 22:29  Число просмотров: 2121
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
просто есть гостевая книга с возможностью добалять картинки, а юзеры так и норовят зааплодить свои многомегабайтные фотки, снятые дигитальными камерами, а потом ещё сцуки жалуются что у них ничего не работает.
видимо без активх/ ява аплетов etc не обойтись
<web building>
Как узнать размер файла до аплоада ? 10x 06.09.03 19:07  
Автор: tdes@work Статус: Незарегистрированный пользователь
<"чистая" ссылка>
речь шла о модулях на mod_perl 09.09.03 15:49  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
...которыми действительно можно достатчно прилично управлять сервером, но и тут далеко не факт, что пройдет такой фокус с предварительным определением размера.

А главное, я не совсем понимаю, зачем это нужно. Разве что грубо прикинуть из content-length общий размер, чтобы отсечь загрузку заведомо больших файлов.
подразумевалось на стороне клиента 09.09.03 22:29  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
просто есть гостевая книга с возможностью добалять картинки, а юзеры так и норовят зааплодить свои многомегабайтные фотки, снятые дигитальными камерами, а потом ещё сцуки жалуются что у них ничего не работает.
видимо без активх/ ява аплетов etc не обойтись
подразумевалось на стороне клиента 10.09.03 00:02  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
> просто есть гостевая книга с возможностью добалять
> картинки, а юзеры так и норовят зааплодить свои
> многомегабайтные фотки, снятые дигитальными камерами, а
> потом ещё сцуки жалуются что у них ничего не работает.
> видимо без активх/ ява аплетов etc не обойтись

На стороне клиента - никак. Но никто не мешает вставить в скрипт проверку размера заливаемого файла. В точной формулировке это происходит уже после upload'а, но до завершения работы скрипта.
ну почему никак ? яваскриптом да, но активх то может проверить 10.09.03 01:41  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
ну, если не смущает, что исполнение неподписанных activex разрешает меньшинство пользователей, то да :) 10.09.03 07:52  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
тогда только меньшинству и разрешить аплоад, а объяснить это технической необходимостью. 10.09.03 10:25  
Автор: !mm <Ivan Ch.> Статус: Elderman
<"чистая" ссылка>
а можно поинтересоваться поподробней. чего хотелось сделать? 09.09.03 15:59  
Автор: hamstr Статус: Незарегистрированный пользователь
<"чистая" ссылка>
просто на твой вопрос возникло несколько возможных вариантов и соответственно несколько ответов....
Никак. 09.09.03 10:39  
Автор: trent Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Можно. См. RFC 2068 (http 1.1) 09.09.03 11:36  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
Там смотри то место, где говорится о теле сообщения и конкретно о Content-Length. Ну, а как с сокетами работать - знаешь.

З.Ы. FlashGet ведь умеет размер определять до аплоада, да еще и грузить по частям.
Можно. См. RFC 2068 (http 1.1) 09.09.03 13:43  
Автор: trent Статус: Незарегистрированный пользователь
<"чистая" ссылка>
>Можно. См. RFC 2068 (http 1.1)
Это чтобы узнать дo download'a
Дo upload'a никак. Клиент(браузер) не позволяет никаких манипуляций, со стороны js.

К тому же Content-Length сервер не обязан отдавать и прокси бывают его режут
Сори, не правильно понял... 09.09.03 13:58  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
Тогда, вот для PHP вариант 09.09.03 14:12  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
$HTTP_POST_FILES - поддерживает size

$HTTP_POST_FILES['userfile']['name']
The original name of the file on the client machine.

$HTTP_POST_FILES['userfile']['type']
The mime type of the file, if the browser provided this information. An example would be "image/gif".

$HTTP_POST_FILES['userfile']['size']
The size, in bytes, of the uploaded file.

$HTTP_POST_FILES['userfile']['tmp_name']

In PHP 4.1.0 or later, $_FILES should be used instead of $HTTP_POST_FILES.

Когда делаем move_uploaded_file он уже физически грузится на сервак.
Тогда, вот для PHP вариант 09.09.03 22:34  
Автор: tdes <jin> Статус: Member
<"чистая" ссылка>
> Когда делаем move_uploaded_file он уже физически грузится
> на сервак.
нет, он уже находится в $HTTP_POST_FILES['userfile']['tmp_name']
это все уже обертка 09.09.03 14:27  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
Реально скрипт может что-то узнать только после того, как сервер все уже получил. Content-length относится к размеру всего тела запроса, и чтобы вытащить размер файла, серверу придется вытащить хотя бы кусок multipart-запроса.
Ну, а че не выход? 09.09.03 14:39  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
> Реально скрипт может что-то узнать только после того, как
> сервер все уже получил. Content-length относится к размеру
> всего тела запроса, и чтобы вытащить размер файла, серверу
> придется вытащить хотя бы кусок multipart-запроса.

Ну не весь же файл он загрузит, а кусок...

Раз речь про аплоад, значит какой-то скрипт на серваке подразумевается. А скрипт, в любом случае, не сможет получить размер самостоятельно, без веб сервера.

З.Ы. Хотя, я действительно, кажись не понял вопрос. Наверное он про javascript...
Можно попытаться воспользоваться запросом HEAD 09.09.03 15:16  
Автор: Yurii <Юрий> Статус: Elderman
<"чистая" ссылка>
> Ну не весь же файл он загрузит, а кусок...

Можно попытаться воспользоваться запросом HEAD,
тогда придет только заголовок.
Только не уверен, что все сервера его поддерживают...
Ну, а че не выход? 09.09.03 14:49  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
> > всего тела запроса, и чтобы вытащить размер файла,
> серверу
> > придется вытащить хотя бы кусок multipart-запроса.
> Ну не весь же файл он загрузит, а кусок...

Это исключительно теоретическое предположение, я никогда не видел, чтобы сервер так себя вел :) Схема ведь простая - все стянули с клиента, потом перекинули скрипту. Разве что свой модуль писать, и то я не уверен, что это даст желаемый результат.

> Раз речь про аплоад, значит какой-то скрипт на серваке
> подразумевается. А скрипт, в любом случае, не сможет
> получить размер самостоятельно, без веб сервера.
> З.Ы. Хотя, я действительно, кажись не понял вопрос.
> Наверное он про javascript...

Может и так, но тут ничего не даст сделать секурити.
Может perl умеет? 09.09.03 15:11  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
> > > всего тела запроса, и чтобы вытащить размер
> файла,
> > серверу
> > > придется вытащить хотя бы кусок
> multipart-запроса.
> > Ну не весь же файл он загрузит, а кусок...
>
> Это исключительно теоретическое предположение, я никогда не
> видел, чтобы сервер так себя вел :) Схема ведь простая -
> все стянули с клиента, потом перекинули скрипту. Разве что
> свой модуль писать, и то я не уверен, что это даст желаемый
> результат.

Помнится как-то Urix в споре Perl vs. PHP говорил, что мол перл умеет управлять непосредственно веб-сервером... может с этой стороны подойти?
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach