|
|
|
|
|
|
ВсякоеПопулярноеЗа сегодня: |
PHPОграничение числа подключений при скачивании файлов в PHPРазвивая тему закачки файлов через скрипты PHP с ограничением скорости рассмотрим ограничение количества скачиваемых файлов. Для ограничения количества закачиваемых файлов, по какому-либо критерию, нам потребуется организовать обмен данными между двумя копиями одного скрипта, запущенными в пределах сеанса клиента. Это можно организовать через сохранение информации о запуске скрипта в базе данных или файле, установкой «куки» или использованием сессионных переменных. Правда, ограничения привязанные к сессии или cookie вряд ли могут надёжно помочь нам в этом случае. Клиенту достаточно очистить cookies или воспользоваться другим браузером или программой закачки. Единственный реальный на мой взгляд способ должен использовать ограничение количества закачиваемых файлов на основе IP-адреса клиента. Ограничение скорости скачивания файла в PHPВ предыдущей заметке я рассмотрел способы отдачи файла через скрипт PHP. Приведенная там функция file_download() позволяет отдать произвольный файл, имя которого может быть параметром скрипта или быть заданным константой. Скорость закачки этого файла будет определятся только возможностями сервера и канала связи между ним и клиентом. В случае большого количества подключений к одному или нескольким файлам через скрипт, может наблюдаться перегрузка сервера. Один из методов борьбы с такой перегрузкой – это ограничение как скорости скачивания файла, так и числа подключений от одного клиента или IP-адреса. Поскольку файл у нас отдаётся клиенту программно, то и регулировать скорость отдачи файла и число подключений мы будем таким же образом. Скачивание файлов в PHPМногие ресурсы используют файловые хранилища. Кроме возможностей загрузки и хранения файлов, бывает необходимо организовать их скачивание. Одно дело когда файлы лежат в открытом доступе, но и тогда может потребоваться передача файла через PHP. Например, администратору ресурса может быть нужна информация о количестве скачиваний. Для файлов большого объема до сих пор требуется возможность докачки, что пожалуй и является самым трудным моментом для серверных скриптов. Посмотрим как можно организовать работу скрипта на PHP, который позволяет реализовать все вышеуказанные возможности. Krumo - парсер и отладчикKrumo представляет из себя парсер переменных и конфигурационной информации PHP, реализующий хорошо читаемый древовидный вывод сложных переменных и объектов этого языка. Сайт проекта: http://krumo.kaloyan.info/ Проект также размещен на http://krumo.sourceforge.net Krumo versus print_r() & var_dump()Заголовок у заметки, конечно, не очень получился. Какое противостояние может быть между боксером-тяжеловесом и забиякой-пятикласником? С появлением Krumo обе вышеуказанные функции PHP можно смело отправлять на свалку истории. Самые главные функции PHPВсе, кто занимается разработкой и написанием кода делают ошибки. Это относится не только к PHP, а к любому языку программирования. Потому средства отладки занимают важное место в арсенале любого программиста. PHP ими тоже не обделён. Ошибки фатальные, связанные с неправильным синтаксисом обычно выдаются прямо в браузер. Теги
политика
ljxp
Google
CCK
Китайские зарисовки
PHPtemplate engine
ICQ
Drupal API
Парсеры курсов валют
whois
скульптура
Три Поросёнка
непонятки
интернет
остров Рикорда
криминал
рассылка
Автоматические транскрипции
ну и ну!
дети
рекламная пауза
модули
подсветка синтаксиса
разработка сайтов
шаблоны
PHP
тигра
говнокод
спам
мошенники
joomla
Open layers
отладка кода
drupal 6
Не влезай – убьёт!
Firefox
Skype
фрик-инкубатор
безопасность
drupal 5
хак
Zend Framework
закачка файлов
матан
Готовые скрипты PHP
Компьютерная лингвистика
ЖЖ
вирши
профили установки
Владивосток
больничные будни
браузер
прогулки
VLDC
погода
drupal
мой сайт
Zend
домен
проишествия
|
|
Direqtor Home Page by ASIADATA. |
|
Комментарии
3 часа 19 минут назад
6 часов 39 минут назад
11 часов 22 минуты назад
18 часов 26 минут назад
1 день 5 часов назад
1 день 7 часов назад
1 день 10 часов назад
1 день 12 часов назад
1 день 14 часов назад
1 день 19 часов назад