|
|
|
| Не можете подсказать, есть ли такая возможность в Apache.
Скажем я указываю в настройках загрузить не более 50 Кб, и скажем когда файл будет грузиться на сервер во временное хранилище, то закачка обрубилась бы на 50 кб..
Просто услвоия некоторых хостеров по траффику, чтобы исходящий был в 4 раза больше входящего, и мне бы хотелось, чтобы входящий был минимален. | |
|
|
|
|
|
|
|
для: captain-america
(02.11.2010 в 10:34)
| | в найстройках PHP есть такая опция посмотрите ваш php.ini | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 10:37)
| | спасибо, только я вот хотел спосить с точки зрения вебсервера сценарий загрузки будет такой, как в моем первом посту?
То есть у меня будет идти передача данных от клиента к серверу до тех пор пока размер данных не превысит указанный? | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 10:37)
| | Мне кажется, настройки post_max_size и upload_max_filesize срабатывают уже после того, как файл был передан на сервер, то есть от трафика не спасают. Или нет? | |
|
|
|
|
|
|
|
для: DJ Paltus
(02.11.2010 в 11:46)
| | думаю вы правы. что лить оно будет а потом поругается что размер превышает | |
|
|
|
|
|
|
|
для: DJ Paltus
(02.11.2010 в 11:46)
| | А вы попробуйте, и получите типа:
Warning: POST Content-Length of ХХХХХХХХ bytes exceeds the limit of ХХХХХХХ bytes in.... | |
|
|
|
|
|
|
|
для: captain-america
(02.11.2010 в 10:34)
| | еще есть в apache (mod_) директива в httpd.conf
LimitRequestBody 50000 (в байтах)
она "рубает", прямо когда файл загружается на httpd.
ещё можно средствами JS Определять объём файла и рубать его алертом | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 16:27)
| | Джаваскриптом не выйдет, по крайней мере, кроссбраузерно. В ИЕ можно через activeX как-то добраться до размера файла, да в ФФ есть какой-то специальный параметр тега input, который я в свое время так и не смог заставить работать и благополучно забыл. Остается flash. Вон, если ВКонтакте альбом заливать, оно даже превьюхи делает до загрузки; думаю, та же технология позволит сцапать и размер. | |
|
|
|
|
|
|
|
для: DJ Paltus
(02.11.2010 в 16:35)
| | http://pecl.php.net/package/uploadprogress | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 16:27)
| | Хотя вот тут что-то предлагают. | |
|
|
|
|
|
|
|
для: DJ Paltus
(02.11.2010 в 16:41)
| | Это работа ActiveX компоненты, и такое только с разрешения пользователя может работать, а потому не совсем приемлемо, тем более FSO, которым у клиента можно такое натворить, если разрешить.
Есть более безопасное и доступное решение с помощью JS:
function imgVal(s) {
var ims = new Image();
ims.src = s;
ims.onload = function() {alert(ims.fileSize);}
}
</script>
<input type="file" name="image" onchange="imgVal(this.value)">
|
| |
|
|
|
|
|
|
|
для: sim5
(02.11.2010 в 17:59)
| | Надо сказать, что данный пример не работает минимум в ФФ, ни по onchange, ни по onblur. Да и вопрос отключенного JS остается в силе. Flash пока что безальтернативен получается. | |
|
|
|
|
|
|
|
для: DJ Paltus
(03.11.2010 в 11:54)
| | Да, свойство fileSize поддерживает только IE, другие браузеры не поддерживают, как и не поддерживают полезное свойство mimeType, и др., "война браузерная" всему виною. )
А ActiveX это вообще бомба, которую только неоптый юзер может разрешить "взорвать" у себя на странице.
PS. Кстати, FSO тоже не будет работать из под FF и прочих, кроме IE. | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 16:27)
| | >ещё можно средствами JS Определять объём файла и рубать его алертом
Ага, прямо таки страшная защита.... выключил JS и нет защиты. | |
|
|
|
|
|
|
|
для: sim5
(02.11.2010 в 17:15)
| | это никто не оспаривает, а просто перекуриваются варианты. | |
|
|
|
|
|
|
|
для: Uzer44
(03.11.2010 в 09:05)
| | JS вариант, это просто сервис, и никак им вы не рубанете ничего. ;-) | |
|
|
|
|
|
|
|
для: sim5
(03.11.2010 в 10:24)
| | не соглашусь если применить AJAX то вполне можно отследить кол-во байт загруженного темпфайла и если превысит рубануть. | |
|
|
|
|
|
|
|
для: Uzer44
(03.11.2010 в 12:14)
| | Не соглашайтесь, но JS это просто сервис, который можно банально отключить, да и JS не у каждого браузера такую инфу выдаст, а все другое это уже вторжение в личное. ;-) | |
|
|
|
|
|
|
|
для: Uzer44
(02.11.2010 в 16:27)
| | Насчет js я уже думал, но как заметили ниже его легко отключить.
Можно насчет LimitRequestBody 50000 (в байтах) поподробней.
Каков будет сценарий, если будет больше 50К, он выдаст ошибку? Если да то в каком виде? | |
|
|
|
|
|
|
|
|
для: DJ Paltus
(03.11.2010 в 17:09)
| | Спасибо за ответ, буду дальше мучить форум Апаче как все это сделать, чтобы нормально работало. | |
|
|
|