当前正在使用Codeigniter / PHP和IIS 7
我目前正在研究“热链接”,但这仅能防止图像被放置到其他网站上。这不会阻止最终用户直接将图像URL粘贴到地址栏中并在不登录的情况下访问图像。
我不太确定解决此问题的最佳方法是什么。如何保护图像,使其只能由已登录的用户访问?
谢谢。
将图像放置在站点的Webroot 外部的某个位置。
具有一个可在登录时获取图像并显示图像的php脚本only。
最好的方法是,如果您停止在整个站点上使用真实的图像url,并始终通过php脚本(控制器功能)检索图像,则可以帮助您检查用户身份验证以及其他人员,例如调整大小/裁剪/缓存等好。
在这种情况下,您甚至可以在根目录下使用任何url,外界根本不知道。
以上答案中存在性能问题。您可以每小时/每天重命名包含图像的文件夹。例
[images/a8s7d5r7w9/33229.png
至images/g2j3s3l1p2t/33229.png