Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Catalyst][mod_perl2] макс. размер файла из форм 
V
    Опции темы
gcc
Дата 17.10.2009, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



хочу закачать файл(ы) из форм HTML (картинки закачать)

есть  http://search.cpan.org/~flora/Catalyst-Run...quest/Upload.pm

Код

    my $upload = $c->req->upload('field');


но как поставить чтобы был определенный возможный максимальный размер?

тут вот есть метод     $upload->size; но он проверяет размер, после того как файл закачался?

как ограничить максимальный размер загружаемого файла? 
PM WWW ICQ Skype GTalk Jabber   Вверх
Itsys
Дата 17.10.2009, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: нет
Всего: 34



Не знаю, как в Catalyst, но при использовании CGI можно установить переменную, которая ограничивает максимальный размер:
Код

$CGI::POST_MAX

PM MAIL WWW Skype   Вверх
sir_nuf_nuf
Дата 17.10.2009, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 6.1.2008

Репутация: 2
Всего: 31



Каталист наверняка для таких целей использует переменные нижележащей технологии.
Так что читайте как это сделать в mod_perl.



--------------------
user posted image
user posted image
PM MAIL Jabber   Вверх
gcc
Дата 17.10.2009, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



я нашел, но не знаю куда это поставить в каталист

(мне нужно на одной странице ограничить до 1М, на другой - больше 1М)

вот не могу найти http://www.google.com.ua/#hl=uk&q=POST...1571743260a290a

Цитата



If you are using CGI.pm, you can set the maximum allowed POSTsize and disable file uploads using the following setting:
 
    use CGI;
    $CGI::POST_MAX = 1048576;  # max 1MB allowed
    $CGI::DISABLE_UPLOADS = 1; # disable file uploads
 
The above setting will reject all submitted forms whose total size exceeds 1 MB. Only non-file upload inputs will be processed.
 
If you are using the Apache::Request module, you can disable file uploads and limit the maximum POSTsize by passing the appropriate arguments to the new( ) function. The following example has the same effect as the CGI.pm example shown above:
 
    my $apr = Apache::Request->new($r,  
                                   POST_MAX        => 1048576,
                                   DISABLE_UPLOADS => 1
                                  );
 
Another alternative is to use the LimitRequestBody directive in httpd.conf to limit the size of the request body. This directive can be set per-server, per-directory, per-file, or per-location. The default value is 0, which means unlimited. As an example, to limit the size of the request body to 2 MB, you should add:
 
    LimitRequestBody 2097152
 
The value is set in bytes (2097152 bytes = = 2 MB).
 
In this section, we have presented only a single example among many that can cause your server to use more memory than planned. It helps to keep an open mind and to explore what other things a creative user might try to do with your service. Don't assume users will only click where you intend them to.
 
 

 


Это сообщение отредактировал(а) gcc - 17.10.2009, 22:12
PM WWW ICQ Skype GTalk Jabber   Вверх
gcc
Дата 18.10.2009, 01:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



а подскажите где в Catalyst  Apache::Request?

не могу его найти...
PM WWW ICQ Skype GTalk Jabber   Вверх
DEER
Дата 18.10.2009, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 749
Регистрация: 12.4.2005
Где: г. Рязань

Репутация: 2
Всего: 13



Там свой Request вроде 


--------------------
 
PM MAIL WWW ICQ MSN   Вверх
mvsgt
Дата 19.10.2009, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 209
Регистрация: 27.3.2009

Репутация: нет
Всего: 1



Я где-то читал, что Moose в принципе не всегда может работать с mod_perl - может быть, и не стоит заморачиваться, fastcgi проще ?
PM MAIL   Вверх
gcc
Дата 19.10.2009, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



ну у меня сейчас работает версия 5.80 которая с moose в mod_perl, работает хорошо...

может исключительно на httpd.con надо ограничить...
PM WWW ICQ Skype GTalk Jabber   Вверх
gcc
Дата 16.12.2009, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



нашел  LimitRequestBody 5000000
в httpd.conf или .htaccess по-моиму, тоже

НО если нужно ограничть для картинок 5Мб, а для видео 300Мб??

я вижу один вариант: разрешить закачивать картинку в 300Мб, после того как закачалась, посмотреть если она больше чем 5Мб, то удалить

ради интереса, может быть есть другой вариант или на другом веб-сервере?
PM WWW ICQ Skype GTalk Jabber   Вверх
gcc
Дата 16.12.2009, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 2
Всего: 17



UPD: можно добавить домен photo.mysdomain.com и туда отуда загрузить с конкретным LimitRequestBody smile вроде бы это сработает....
PM WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.0776 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.