加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

仅在php中限制对登录用户的图像文件的访问

发布时间:2020-12-13 13:35:58 所属栏目:PHP教程 来源:网络整理
导读:假设用户A在他/她在Facebook的帐户中有一些图像,他/她可以在登录后查看. 如果用户A注销并尝试其中一个图像的URL,则会出现“访问限制”类型的消息. 想想用PHP构建的社交网站. 如何实现这种控制,以便在不登录网站的情况下可以查看无图像JUST如Facebook那样?
假设用户A在他/她在Facebook的帐户中有一些图像,他/她可以在登录后查看.

如果用户A注销并尝试其中一个图像的URL,则会出现“访问限制”类型的消息.

想想用PHP构建的社交网站.

如何实现这种控制,以便在不登录网站的情况下可以查看无图像JUST如Facebook那样?

>将所有图像移动到无法从Web访问的文件夹.
>实现一个php脚本(image.php),它检查用户是否已登录并接受图像名称作为输入(例如image.php?name = flower.png).
>如果用户已登录,请发送正确的内容类型图像标题() http://il2.php.net/manual/en/function.header.php(例如image / png)
>从磁盘读取文件并使用readfile() http://php.net/manual/en/function.readfile.php将其发送给用户.
>确保人们无法通过发送/images.php?name=/etc/hosts之类的内容来访问图像目录外的文件(最好接受图像ID而不是文件名或哈希对于文件名,您可以使用md5() http://il2.php.net/manual/en/function.md5.php生成哈希,但记得根据md5哈希命名图像文件,在这种情况下,您始终只在images目录中查找图像文件). >如果用户未登录,您可以发送一个自定义图像,其中显示“请登录”或只是终止脚本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读