【发布时间】:2012-11-19 11:40:47
【问题描述】:
我有一个名为 - Images 的文件夹。此文件夹包含用户个人资料图片。现在用户可以随时通过将图像 URL 复制到他的浏览器来查看他的图像。这样他也可以看到其他用户的个人资料照片。我想要实现的是 - 用户应该只能通过我网站上的 PHP 页面查看他的个人资料图片。如果用户直接放图片 URL,就不应该显示。
我尝试使用 .htaccess 来实现这一点。这就是我在 .htaccess 文件中的内容:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?mysite.com/
RewriteRule \.(gif|jpg)$ http://www.mysite.com/errorpost.jpg [R,L]
我是 .htaccess 的新手。如果有办法实现这一点,请提供帮助。
提前致谢。
【问题讨论】:
-
上面我用的方法不行。输入图像 url 时,它仍然显示图像。
-
看看这对你有没有帮助:stackoverflow.com/questions/9282124/…
-
你想解决什么问题。是否要阻止人们查看个人资料的个人资料图片,他们不允许查看?
-
@Gerben .. 假设我正在查看我的个人资料。通过查看源代码,我可以看到我的个人资料图片的图像位置。然后我将该网址粘贴到地址栏并打开图像。现在我希望用户不能以这种方式直接访问图像。是否可以限制用户直接查看图像。应该允许他仅使用我创建的作为个人资料页面的 PHP 页面查看图像。这样他就无法猜测其他用户的网址,也无法看到他们的图片。
-
为个人资料图像生成伪随机文件名应该可以解决这个问题。例如使用配置文件 ID 的 md5 作为图像文件名。
标签: php apache .htaccess hotlinking