Создание временного файла

12
VHS-1980
На сайте с 21.05.2010
Offline
91
#11

А просто md5(session_id() . $filename) никак приспособить нельзя? При смерти сессии умрет и набор md5...

IL
На сайте с 20.04.2007
Offline
435
#12
sdaprel:
Думаю наиболее оптимальным вариантом будет, написать класс в конструкторе которого мы создаем алиас (символическую ссылку) на нужный нам файл со случайным именем, а в деструкторе уничтожаем этот алиас. А вот как заставить объект этого класса прожить время пока пользователь смотрит фильм или слушает музыку, тут надо подумать.

симлинк - штука хорошая.. вполне пригодная (думаю, хостер не ограничит) а вот деструктор с конструктором - не в тему.. Тут вариант "по крону" (с хранением даты создания и имени файла) - самое оно.

До кучи, чтобы файл не был доступен с других адресов / в другой сессии можно пользовать X-Accel-redirect/ XSendfile

---------- Post added 02-03-2013 at 10:13 ----------

VHS-1980:
При смерти сессии умрет и набор md5...

А файл-то останется...

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
VHS-1980
На сайте с 21.05.2010
Offline
91
#13

Возможно, если не писать сессии куда-либо.

Просто привык, что во многих схемах авторизаций сессии пишутся в базу, а там уже организовать отбор мертвых сессий несложно, и файлы можно убивать без проблем.

Просто в этом случае исключается доступ к тому же файлу с другого компа, с другой сессии. Но если это не нужно - можно придумать еще кучу способов временных файлов. Проблема лишь в том, что время, через которое файл будет убиваться должно быть лимитировано со стороны сервера, а юзер может его гонять очень долго в своем плеере.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий