- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Ну, и скрипт для удаления -
Зачем так сложно то?
Если цель контролировать/скрыть реальный адрес файла, то nginx понимает заголовок X-Accel-Redirect c помощью которого можно скрыто перенаправить скачивание на реальный адрес файла
Реальный адрес файла закрываем опцией internal, и по прямой ссылке будет ошибка 404
https://nginx.org/ru/docs/http/ngx_http_core_module.html#internal
Поправьте меня конечно:
Реальный адрес файла закрываем опцией internal, и по прямой ссылке будет ошибка 404
И какой смысл? Суть то в том, чтобы файлы вообще были доступны временно для всех. Мы тут не меняем одно название файла на другое.
Поправьте меня конечно:
И какой смысл? Суть то в том, чтобы файлы вообще были доступны временно для всех. Мы тут не меняем 1 название файла на другое.
Хотите постоянную ссылку - пожалуйста
/down.php?id=1
А скрипт уже через заголовок редиректит на /data/files.zip к примеру
По прямому адресу /data/files.zip - доступа не будет, только через down.php
Хотите постоянную ссылку - пожалуйста
/down.php?id=1
А скрипт уже через заголовок редиректит на /data/files.zip к примеру
По прямому адресу /data/files.zip - доступа не будет, только через down.php
Ссылка должна привязана быть к пользователю. Это защита, чтобы не делились ссылками.
Через час ссылка умирает и пока физически человек её не запросит, файл не будет доступен.
Ссылка должна привязана быть к пользователю. Это защита, чтобы не делились ссылками.
Через час ссылка умирает и пока физически человек её не запросит, файл не будет доступен.
Без проблем
Пишем в базу ключ=>имя файла
down.php?hash=какой-то_одноразовый_ключ
Через час с базы удаляем
По Вашему же примеру, можно в момент старта скачивания продлевать таймер на час
Можно к IP привязать скачивание, хоть к времени суток или фазе луны
К авторизации на сайте тоже можно привязаться
На что фантазии хватит
в файловую систему вообще не лезем, и через php файлы не отдаём
На что фантазии хватит
в файловую систему вообще не лезем, и через php файлы не отдаём
Да, тут вообще у нас любые фантазии приветствуются. Я предложил пример в лоб, который вполне понятен, и его реализация проста и прозрачна.
На nginx можно реализовать одноразовые ключи, вот статья: https://habr.com/ru/articles/346758/
В общем долго я бодался с ним, не все и не сразу получалось. Однако, он понимает меня куда быстрее чем остальные прогеры. В итоге, я получил рабочий вариант -
Скрипт для удаления устаревших файлов -
Крон на выполнение скрипта по удалению устаревших файлов -
0 * * * * php /var/www/user/data/www/domain.com/deleteoldtmp.phpЗачем так сложно то?
Если цель контролировать/скрыть реальный адрес файла, то nginx понимает заголовок X-Accel-Redirect c помощью которого можно скрыто перенаправить скачивание на реальный адрес файла
Реальный адрес файла закрываем опцией internal, и по прямой ссылке будет ошибка 404
https://nginx.org/ru/docs/http/ngx_http_core_module.html#internal
не подскажите на apache такое можно делать?
не подскажите на apache такое можно делать?
да. MOD_X_SENDFILE .но лучше нгинх
Кстати, чтобы файлы туда сюда не перемещать, PHP всё же умеет в символические ссылки: https://www.php.net/manual/ru/function.symlink.php
Поэтому без проблем можно не файлы копировать, а просто ссылки на них создавать.