Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/54.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 隐藏非成员用户的图像_Ruby On Rails_Performance_Caching_Webserver_Privacy - Fatal编程技术网

Ruby on rails 隐藏非成员用户的图像

Ruby on rails 隐藏非成员用户的图像,ruby-on-rails,performance,caching,webserver,privacy,Ruby On Rails,Performance,Caching,Webserver,Privacy,我有一个网站,用户可以上传图片,并将每张图片的隐私设置设置为“公众可见”、“会员可见”或“朋友可见”。当图像设置为“成员可见”时,所有未登录的用户都会看到一些“禁止注册”图像。当“朋友可见”时,所有非朋友都会看到“禁止”的朋友 实现这一目标的最佳方式(就资源友好/最快而言)是什么 目前,对于登录和未登录的用户,我在html中有一个指向图像资源的通用链接,如 My/image是一个脚本,它在数据库中查找当前用户(通过cookie)和图像元数据(通过图像id),比较用户的访问权限,然后发送实际图像或

我有一个网站,用户可以上传图片,并将每张图片的隐私设置设置为“公众可见”、“会员可见”或“朋友可见”。当图像设置为“成员可见”时,所有未登录的用户都会看到一些“禁止注册”图像。当“朋友可见”时,所有非朋友都会看到“禁止”的朋友

实现这一目标的最佳方式(就资源友好/最快而言)是什么

目前,对于登录和未登录的用户,我在html中有一个指向图像资源的通用链接,如

My
/image
是一个脚本,它在数据库中查找当前用户(通过cookie)和图像元数据(通过图像id),比较用户的访问权限,然后发送实际图像或“禁止”图像。这里的问题是:每次加载图像时都会调用脚本,并产生一些我希望避免的开销

我希望服务器上的所有图像都是静态的,并由某种静态哈希URL调用。这样就不必每次都触发臃肿的脚本。但我也希望防止用户复制静态图像链接并将其发送给其他(未登录)用户(由于模糊性而没有安全性!)。另一个问题是,我需要确保只有朋友才能看到“朋友可见”的图像

你对此有什么经验?欢迎有任何想法


PS:我正在使用Ruby on Rails、Mysql、Apache和Redis,但欢迎使用通用解决方案,这就是为什么我没有添加与技术相关的标记。

没有这些标记,您可能会吸引更少的视图。添加最相关的标签将有助于你获得更好的答案。是的,我这么认为。。。添加了更多标签以引起注意。