在我的网站中,我想限制查看存储在名为" / content"的目录中的某些文件。这样只有登录的用户才能查看文件
现在看来,任何在浏览器中输入xxxxxxx.com/content/4dc32b1c0a630.png的人都可以看到此图像文件
我已经在我的.htaccess文件中添加了选项 - 索引但是没有做任何事情
如果它有用,我的网站是使用codeigniter构建的,那么PHP解决方案会很棒,不过我会接受你的建议!
谢谢你, 添答案 0 :(得分:2)
您可以为此目的编写控制器。
在我的一个项目中,我为登录用户完成了一个调整大小的图片控制器。它基于timthumb脚本http://code.google.com/p/timthumb/
在controller __contruct()中;编写用户身份验证代码,这就是全部!
因此,您将通过控制器调用这些文件,例如http://www.site.com/images/1314.png
答案 1 :(得分:1)
使用mod_rewrite将对/content
中任何内容的任何访问重写为PHP脚本,该脚本将授权用户,然后直接或通过mod_xsendfile提供文件。
答案 2 :(得分:0)
将这些行放在根.htacess文件中,以阻止未经身份验证的用户访问content/4dc32b1c0a630.png
:
Options +FollowSymlinks -MultiViews
RewriteEngine on
RewriteCond %{LA-U:REMOTE_USER} ^$
RewriteRule ^content/4dc32b1c0a630\.png/?$ - [R=403,L]
但是我建议您使用通配符(如果可能)匹配上面的阻止文件,而不是列出每个单独的文件。