如何防止用户浏览我网站的某些文件

时间:2017-02-14 15:37:22

标签: web

我最近在GoDaddy托管上推出了一个网站。我已经在网站上的单独文件夹中保存了一些图像和JavaScript文件。我想通过在网站URL中附加文件夹和文件名来阻止用户浏览这些图像和文件。例如 www.example.com/images/logo.png

2 个答案:

答案 0 :(得分:0)

如果我理解正确,你想要有带图像的html文件,那不应该单独访问吗?如果是,则无法完成。您可以查看正确的HTTP Referrer标题,但它可能只是伪造,并且它也使得无法访问不发送引荐来源或禁止发送引用的浏览器"隐私"原因。

如果你想只能通过服务器端脚本ftp / scp访问隐藏文件,那么你可以尝试使用.htaccess(如果GoDaddy在Apache上运行)并正确配置:https://httpd.apache.org/docs/2.2/howto/access.html

另一种方法可能是隐藏这些文件并创建像这样的一次性令牌: <img src=<?pseudocode GEN_TOKEN("file.jpg") ?> />使用另一个文件为生成的令牌提供这些隐藏文件,然后从DB中删除它。然而,如果他们想要,这将不会保护任何人下载或访问这些文件......

但是,无论如何,试着更好地澄清你的问题......

答案 1 :(得分:0)

如果您将图像/文件保存在对公众开放的文件夹中,我猜您保留在该文件夹中,您希望公众访问这些图像和文件。

公众如何知道图片文件名?停止您网站的文件内容列表。

我不知道您在Web服务器上使用的是哪种语言,但在ASP.NET中,您可以编写可以在即将到来的请求中拦截的模块/中间件,并根据您的逻辑(例如,身份验证和授权)限制访问。所有现代语言都支持这种功能。