В папке data лежат данные. Эти данные нужно иметь возможность скачивать только с админки по ссылке. Но не напрямую. Как это реализовать?
vagrand
14.08.2013 - 21:13
Способов достаточно много. Самый простой отдавать через скрипт, в котором проверять права пользователя. Этот же способ и самый затратный по ресурсам сервера.
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
Тогда логичный вопрос, а какой способ не самый затратный?
vagrand
14.08.2013 - 21:57
Я не берусь судить о самом незатратном, но я бы сделал следующим образом:
1. Поставил бы в качестве веб сервер ngix. У него есть функционал, который позволят при запросе файлов до их отдачи "спрашивать" разрешения у некоторого срипта, который должен вернуть ему один из двух возможных заголовков, по которым ngix сделает вывод отдавать файл или нет.
2. При большом объеме трафика воспользовался бы услугами CDN, например от амазона. Они позволяют отдавать файлы с секюрной подписью.
_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
killer8080
14.08.2013 - 22:28
Цитата (vagrand @ 14.08.2013 - 20:57) |
1. Поставил бы в качестве веб сервер ngix. У него есть функционал, который позволят при запросе файлов до их отдачи "спрашивать" разрешения у некоторого срипта |
кстати аналогичный функционал есть и у апача
https://github.com/nmaier/mod_xsendfileещё есть третий вариант, закрыть прямой доступ к файлам, а в паблике создавать на него временные симлинки
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.