如果用户在地址栏中键入完整的url,则阻止访问文件

我有一个网站,网站上的一些文件夹包含图像和文件,如.pdf,.doc和.docx。 用户可以简单地在URL中input地址来获取文件或显示照片

HTTP://site/folder1/img/pic1.jpg

然后繁荣..他可以看到图像或只是下载文件

我的问题是:如何防止这种行为,我如何保证文件的安全访问。

有什么build议么

更新以澄清我的想法

我不希望任何正在浏览网站的用户通过写入文件的URL来正常访问这些文件。 这些文件是CV文件,它们被用户上传到我们在公司外部的服务器上的特定文件夹。 这些文件只能通过一个特殊的系统被HR人员查看。 那是我们想要的场景。 我不想要一个WEB GEEK,他只是想看看哪些文件已经上传到这个文件夹,轻松地下载到他/她的计算机上,并查看它们或在互联网上发布。 我希望你有我的想法

您可以将上传的文件存储到Web应用程序之外的目录中,以便通过URL无法直接访问它们; 这将确保Web服务器不会通过请求的URL来提供这些文件。

当您必须提供这些文件时,请确保请求该文件的用户有权访问该文件。 换句话说,请检查用户是否有权查看文件 – 您可能需要授权上载文件的原始用户以及HR用户访问文件。

由于Web服务器不能直接访问这些文件,因此不能直接访问这些文件,所以必须用您select的语言(PHP / ASP / JSP等)编写服务器端脚本,因为您没有指出)将在后授权检查,检索文件并将其内容提供给用户。

为了提高文件的安全性,您可以将它们放在webroot 之外的目录中,然后通过脚本将它们stream式传输到您的网页。 最重要的是,stream式传输的脚本必须位于访问控制页面上。 您可以使用.htaccess,但我更喜欢更灵活的login系统。

您可以检查HTTP Referrer标题,以检查链接是否来自您的网站。 请注意,推荐人可能是伪造的,但是如果您只是想找一个简单的方法来吸引大多数人,这是行不通的。