我有一个网站,用户应该能够登录并收听一首歌曲(一个自制的mp3)。我想这样做,登录的用户可以监听/下载/任何文件,并且文件应驻留在服务器上(不要存储在MySQL数据库中),但不能被具有该路径的非用户访问到URL。PHP:如何阻止对文件的直接URL访问,但仍允许通过登录用户下载?
例如:说我的mp3位于mysite.com/members/song.mp3如果您已经登录,您应该能够看到mysite.com/members/index.php页面,这将允许访问到song.mp3文件。如果您未登录,mysite.com/members/index.php页面将不会显示song.mp3文件,并且直接链接到它不应该授予访问权限。
我很确定这是通过htaccess完成的,我已经做了很多谷歌搜索,并在这里搜索。我发现两个最接近的答案是这个htaccess指南http://perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/和这个StackOverflow问题Block direct access to a file over http but allow php script access,但都不回答我所有的问题,以满足我的标准。我错过了什么?
这工作,非常感谢你! – Bing
除了拒绝直接访问,您可以将文件存储在wwwroot之外。 –
这对我来说:)谢谢... –