Запретить живое соединение по ip в nginx / linux программно с помощью переполнения стека

У меня есть приложение PHP для проверки доступа пользователей (user / pass) и, если доступ истинный, предоставьте им файл для загрузки, отправив nginx X-Accel-Redirect заголовок пользователю.

Проблема проявляется, когда пользователь может поделиться своими данными для входа в систему (пользователь / пароль) с другими людьми; так что у каждого есть данные для входа, они могут получить доступ к файлам и загрузить их Я продолжаю описывать мою проблему на примере.

Например,
думаю, что у нас есть два народа, которые делятся своим доступом к логину так что они оба используют один и тот же пользователь / пароль для входа в систему. давайте назовем их «User_1» а также «User_2».

User_1 Войдите в систему и начните скачивать файл. в то же время, User_2 пытаюсь зайти тоже. здесь моё php-приложение обратило внимание на вторую попытку входа в систему.
У меня есть их (IP-адрес, user-agent, session_id), и я также могу узнать, какой файл уже загружается User_1.

Когда User_2 пытаясь войти, я удалю User_1сессия в php / mysql и если User_1 хочет скачать снова, он должен повторно войти в систему. Я даже могу просто приостановить эту учетную запись (Пользователь / Пасс), чтобы никто не мог использовать ее снова!
Но проблема в том, что X-Accel-Redirect уже отправлено User_1 для его предыдущего входа в систему и загрузка продолжается, даже если я удаляю сессии php и вынуждаю выйти User_1!

Итак, мне нужен способ прекратить User_1Живое соединение для скачивания.
Таким образом, сделать невозможным более одной загрузки от одного пользователя / прохода одновременно.

Есть идеи?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]