【问题标题】:How to restrict access to certain kind of content, with apache or .htaccess?如何使用 apache 或 .htaccess 限制对某种内容的访问?
【发布时间】:2011-08-21 01:07:14
【问题描述】:

我正在建立一个网站,用户可以在其中上传照片,他们可以将它们标记为私人,这样任何人都看不到它们。

我知道如何在 php 中使用基于 ACL 的系统,但任何人只要有图像文件的直接链接,仍然可以访问这些照片。

例如:用户 1 想与用户 2 共享照片 A,因此他授予他访问权限。用户 2 右键单击​​图像,并复制其 url,例如“http://example.com/private123.jpeg”,并将其发送给用户 3。现在用户 3 可以看到他不应该看到的图像.

总而言之,我需要一种基于用户权限保护图像的方法,但仍然让它们快速加载(因此每次请求图像时运行 php 脚本都会被丢弃)。

apache 可以吗?我在想也许我可以在用户登录时设置一个 cookie,然后让 apache 以某种方式检查它。我不在乎 cookie 是否可以伪造,99,99+% 的用户不知道该怎么做,而且照片不需要比这更高的安全性。

【问题讨论】:

    标签: image security apache .htaccess static-content


    【解决方案1】:

    将所有图像保存在它们自己的目录中,并在该目录中放置一个包含此内容的 .htaccess 文件

    RewriteEngine On
    RewriteCond %{HTTP_COOKIE} !^.*name-of-my-cookie.*$ [NC]
    RewriteRule .* /whatever/page [NC,L]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-23
      • 2012-09-20
      • 2012-03-03
      • 2018-01-30
      • 1970-01-01
      • 1970-01-01
      • 2011-09-11
      • 1970-01-01
      相关资源
      最近更新 更多