我想限制对图像的访问,因此,我会将它们放在Web根目录之外,当用户链接到图像时,它将通过用户/传递从我们的数据库进行身份验证,然后(如果已经过身份验证) )读取图像文件,并使用适当的mime类型输出。
任何图片链接都会是:
<img src="/image.php?id=324fwqrefv35fq5">
其中id是数据库中的imageId。
听起来这是一种好方法吗?还有 - 这样的代码用于php吗?
答案 0 :(得分:5)
听起来是一个很好的方法。无论如何,这就是我攻击它的方式。代码本身对你自己来说应该是微不足道的,尽管谷歌在提出其他人的解决方案方面可能会富有成效。
修改强>
我没有看到您的链接格式。老实说,这是一个非常丑陋的URL。为什么不使用mod_rewrite或其他东西,所以看起来你正在访问图像?例如,
<img src="/image_324fwqrefv35fq5.png">
只需将URL重写为您在答案中指定的格式,以便用户可以查看更好的URL。但这既不是在这里也不是在那里;只是第二个建议。
答案 1 :(得分:0)
我就是这样做的。我还没有看到任何相似的代码,但像Marc说的那样写起来应该是微不足道的。