- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброй ночи/дня всем.
Столкнулся с такой задачкой: отдавая файл через веб-сервер, нужно ограничить число подключений к этому файлу.
Что имеется: Win, Apache 2.2.x, Php 5.2.x
Движения на встречу решения задачки:
1) Перерыл интернет в поисках модулей, которые могут ограничивать число подключений, например к определенной папке. Ранее пользовался mod_limitipconn, все отлично, только он не позволяет устанавливать ограничения на несколько папок. Если устанавливает - то считает все подключенные IP.
Много чего находил в инете, но как правило или под никсы, либо на старые версии апачи. Если есть альтернативы - буду рад глянуть.
2) Попробовал реализовать через Apache+PHP. Отдавать файл, естественно, PHP - совсем нерационально, посему подумал о следующей схеме. Обращаться, например, к директории где лежит .htaccess, через него перенаправляться на скачивание файла.
Есть возможность попутно через .htaccess, переходя к скачиванию файла запустить php-скрипт?
Ну и возможно есть какие-либо упрощенные решения проблемы? Кроме как ставить ngninx).
Заранее благодарю!
Рекомендую поставить в качестве фронтенда nginx.
Там есть возможность задать разные лимиты на количество коннектов и количество запросов с одного IP к каждой отдельной папке.
limit_con
Плюс для отдачи статических файлов он будет тратить меньше ресурсов чем апаче.
И в нем есть много разных полезных функций.
zexis, не хочется воротить. А статических страниц практически нет. На каждой что-то творит php.
Может подскажите, вот есть примерчик, как я понял - дергает перл-скрипт при обращении к директории:
Action downme /cgi-bin/downme.pl
SetHandler downme
</Directory>
Не получается также дёрнуть PHP-скрипт или может я неправильно думаю?
nginx фронтендом это сейчас стандартное решение.
Даже если нет статики он будет полезен, так как апач быстро отдаст содержимое страницы nginx и закроет коннект, а дальше контент уже будет отдавать nginx.
к тому же если нужно ограничить количество коннектов, то оптимальное решение это nginx.
А всякие скрипты для этой цели - это уже лишние ворочения.
zexis, не хочется воротить. А статических страниц практически нет. На каждой что-то творит php.
Может подскажите, вот есть примерчик, как я понял - дергает перл-скрипт при обращении к директории:
Не получается также дёрнуть PHP-скрипт или может я неправильно думаю?
zexis, боюсь задача многомерная - ограничить число коннектов к разным папкам, число подключений и папки генерируются скриптом и зависят от того или иного пользователя.
Вы по поводу ворочений, НЕ правы. Тут хоть и есть несколько скриптов, но всю работу может выполнять простой подключенный модуль у Apache, было бы здорово такой найти, в противном случае буду ковырять похожий модуль самостоятельно. По ресурсоемкости одной и второй задачки - Apache явно выигрывает. Тем более с Nginx нужно разбираться, т.к. лично я с ним мало знаком да и не хочется знакомиться пока, ибо нет на то достаточных причин.
sneJok7, да, так же как пёрл дергается и php
Raistlin, поясните, пожалуйста, насколько верен код:
Action downme /loader/downme.php
SetHandler downme
</Directory>
Прописывается путь C:/web_server/www/, в нём лежит папка loader, а в ней - downme.php.
www - является корневой директорией, обращаясь через браузер по moidomen.ru, грузится index.php из www.
Обращаясь к www через браузер, посредством набора ссылки moidomen.ru будет ли срабатывать дополнительно скрипт, находящийся в C:/web_server/www/loader/downme.php?
sneJok7, впринципе верный.
Raistlin, попробовал, не может найти директорию (?) - /loader/downme.php/
Так вы укажите относительный путь, (уберите первый слеш)...
Action downme loader/downme.php - так? Пишет 400 - ошибочный запрос.