首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从文档根目录移动图像以提高安全性

从文档根目录移动图像以提高安全性
EN

Stack Overflow用户
提问于 2011-12-08 16:23:48
回答 1查看 97关注 0票数 1

我的网站使用bookmarklet从外部网站收集数据,有点像Pinterest。我关心安全性,并希望将bookmarklet从文档根目录收集的图像上移一个级别。我的脚本有一些严格的安全检查,但我想添加这一点作为最后一道防线。

如何在脚本中访问我的图像?显然,使用../userimages/id/image.jpg不会起作用。我使用的是Apache。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-08 17:01:27

代理镜像

您可以使用代理脚本来提供图像,如下例所示:

代码语言:javascript
复制
// open the file in a binary mode
$name = '../userimages/id/image.jpg';
$fp = fopen($name, 'rb');

// send the right headers
header("Content-Type: image/png");
header("Content-Length: " . filesize($name));

// you  may like to set some cache headers here

// dump the picture and stop the script
fpassthru($fp);
exit;

这个例子来自PHP manuals fpassthru() page。您可以将此脚本保存在服务器文档根目录/httpdocs文件夹中的某个位置。

“欺骗”图像的URL

要使PHP文件在用户/浏览器中显示为图像文件,最简单的方法是使用Apaches mod_rewrite。我通常使用如下的URL结构:

代码语言:javascript
复制
http://www.example.org/image-id/image.png

其中image-id是该特定图像的唯一标识符。这样,文件就有了正确的图像扩展名,而不是.php

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8428101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档