У меня есть страница с аудиоплеером, который транслирует несколько mp3-файлов.Этот проигрыватель использует XML-файл, который содержит путь ко всем этим файлам, которые находятся в папке audio в каталоге webroot.
Что мне не нравится, так это то, что это довольно легкопользователь, чтобы получить доступ к XML-файлу (который также находится в каталоге webroot) и посмотреть пути к mp3-файлам, а затем загрузить их, а не просто использовать флэш-плеер.
Я видел этот CakePHPесть что-то под названием Media Views , где вы можете установить папку вне webroot и поместить туда свои файлы, чтобы пользователи не могли свободно обращаться к ним.Объяснение на веб-сайте Cake (http://book.cakephp.org/view/1094/Media-Views) сосредоточено на загружаемых файлах, но я хотел бы знать, могу ли я использовать Media Views для потоковой передачи своих mp3-файлов с помощью аудиоплеера, не делая их загружаемыми пользователями.другая альтернатива без Media Views, которая также будет работать:)
Заранее большое спасибо!
УТОЧНЕНИЕ
Это код, который я 'используя его, я хотел бы изменить:
- В моем контроллере:
function index() {}
- На мой взгляд (index.ctp):
<embed type="application/x-shockwave-flash" flashvars="audioUrl=/audios/01 Track 01.mp3" src="audio-player.swf"></embed>
=> Как я могу изменить это с помощью Media Views, чтобы мой mp3-файл находился в папке app / audios вместо app / webroot / audios?
THISЧТО Я ПРОБОВАЛ:
- В моем контроллере (streams_controller.php):
function index() {}
function getFile() {
$this->view = 'Media';
$params = array(
'id' => '01 Track 01.mp3',
'name' => '01 Track 01',
'download' => false,
'extension' => 'mp3',
'path' => APP . 'audios' . DS,
'cache' => true
);
$this->set($params);
}
- На мой взгляд (индекс.ctp):
<embed type="application/x-shockwave-flash" flashvars="audioUrl=/streams/getFile" src="audio-player.swf"></embed>
ЕЩЕ НЕ УДАЧИ!Что я делаю не так?