| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > взаимодействие htaccess и php скрипта |
| Автор: sneJok 15.5.2011, 00:05 |
| Нужно запустить php-скрипт при редиректе с .htaccess. Схема: ссылка на папку с htaccess -> перенаправляемся -> дергаем скрипт. |
| Автор: $дмитрий 15.5.2011, 01:38 | ||
Оно?
|
| Автор: sneJok 15.5.2011, 05:00 | ||
| $дмитрий, не совсем. Нужно, чтобы подключилось к htaccess, а он в свою очередь - обратился к скрипту и (независимо от скрипта) выдал ссылку на скачивание файла. Что-то похожее нашел, правда в настройках конфига, но тоже подошло бы:
Как я понял при переходе в директорию запускается перл-скрипт? Только что-то никак не получилось прикрутить php вместо перл-скрипта. |
| Автор: Sanchezzz 15.5.2011, 22:26 | ||||
обратится не получится а вот подставить желаемое название можно.
Тесть что будет при запросе /download/<название папке>/ id файла примерно так /download/mydir/17859 download.php
Как вариант можно сделать так . RewriteRule ^/download/(.*) $ /download.php [L] При попадание на этот скрипт делаем в скрипте редерект на нужный нам адрес. |
| Автор: sneJok 17.5.2011, 16:02 |
| Sanchezzz, дело то в том, что редиректившись на нужный адрес, доступ к этому адресу нужно ограничить. Например - 1 раз обратиться можно, 2 раза и т.д. А тут получается - редиректнулся, получил нужный адрес и всё, дальше работаешь с нужным адресом. А нужно, чтобы этот адрес был доступен, например, только при первом обращении. Т.е. доступ регулировать через скрипт. Короче проще - чисто на модулях Apache 2.2.х можно ограничить скорость\число подключений к определнным директориям? Гуглялазание не дало нужного эффекта, кроме как модули под старую апачу. Большинство вообще под никсы. Надо под винду. |
| Автор: Sanchezzz 18.5.2011, 10:23 |
| Задача не такая и не победимая можно извратится как угодно на пхп. Зашел на страницу А средствами PHP проверил записал в базу разрешил перенаправил его. На странице B Спросил а если у тебя пропуск и разрешение на работу ? а нету ну и иди от суда иммигрант несчастный. |
| Автор: sneJok 18.5.2011, 13:09 |
| Sanchezzz, было бы прекрасно решить задачу на PHP. Всё понятно и ясно, но неизвестно как воплотить одно звено в жизнь. Пример Есть простой файл, который просто загружается посредством Apache, например 1.rar. К нему нужно сделать возможным обращение лишь определенное число раз. Хорошо, сделаем переход через php-скрипт к 1.rar. Php-скрипт зарегистрирует обращения к нему. Как сделал бы какой-нибудь менеджер загрузок: Обращается через php-скрипт, получает доступ к 1.rar. Начинает подключаться вторым потоком к 1.rar уже напрямую. Затем третьим, пятым и тд. То есть всё в обход скрипта. А надо, чтобы контролировал каждое обращение. |
| Автор: $дмитрий 18.5.2011, 14:33 | ||
Опиши в деталях какой сервис пробуешь написать
Все-таки 1 раз должен быть загружен файл или несколько? --- Отдаешь через скрипт + ставишь метку что данный пользователь начал грузить файл Если интересует ДОкачка файла смотри $_SERVER['HTTP_RANGE'] |
| Автор: sneJok 18.5.2011, 15:02 |
| $дмитрий, файловый HTTP - архив, с регулируемым числом потоков для каждого пользователя. Число потоков варьируется и устанавливается сервером. Пользователю выделяется 10 потоков(подключений) и на эти 10 потоков он может скачать файлы на сервере. Поэтому нужно знать - сколько сейчас подключений выполнено пользователем к архиву (например, у него идет скачивание 2 файлов в 2 потока) и сколько еще можно ему выделить из 10 (в данному случае 6) и чётко их ограничивать. Как ограничить подключения к файлу? - единственное, что непонятно. По поводу отдачи через PHP-скрипт в инете писали, да и пробовал реализовывать на практикте - скорость скачивания падает и по ресурсам много кушает. Ведь, если принять во внимание 100 таких скачек, то наверняка PHP заломит сервер. |
| Автор: $дмитрий 19.5.2011, 20:45 |
| Возможно http://habrahabr.ru/blogs/nginx/76100/ |
| Автор: sneJok 20.5.2011, 17:25 |
| $дмитрий, Нужно заточить под апач. Походу придётся ковырять перл-скриптец( |