2

我在一个旧的 Classic ASP 网站上工作,并且有一个目录,其中包含一些 PDF 文档。有没有办法阻止用户通过直接链接(www.example.com/example.pdf)访问所述 pdf 文档,直到他们登录?如果是这样,我会怎么做?

4

4 回答 4

0

ASP 是否具有内置成员资格提供程序,该提供程序通过该目录中的 web.config 中的几行来控制访问

http://msdn.microsoft.com/en-us/library/yh26yfzy%28v=vs.80%29.aspx

于 2012-05-03T22:17:34.540 回答
0

以下来自 Microsft 的文章解释了如何使用经典 ASP 保护对某些页面的访问。

如何使用简单的 ASP 代码密码保护您的 ASP 页面

这里有几个附加链接,它们都适用于 ASP.NET,但也许您可以在经典 ASP 中使用相同的想法。

主题:如何密码保护我网站的子文件夹,以拒绝匿名访问?

这是一篇类似的文章:使用表单身份验证保护文件夹

于 2012-05-03T22:18:26.553 回答
0

我想你的网站已经有一个登录基础设施。

如果不是,您应该将其添加为第一件事 | http://www.evolt.org/node/28652

然后创建页面并将其放在您要保护的资源的位置。例如替换http://youwebsite.com/dir1/dir2/file.pdfhttp://yourwebsite.com/dir1/dir2/getfilepdf.asp.

在您的新脚本中检查用户是否已登录,如果没有将其发送回登录页面。如果用户通过了正确的身份验证,则读取该文件并将其返回给浏览器Response.BinaryWrite

网络上充满了样本。阅读本文 | http://support.microsoft.com/kb/307603

于 2012-06-08T14:45:34.137 回答
0

列出您的文档的页面上的密码保护不会阻止对文档的直接访问。例如,如果您的文档按文件夹视图列出或从任何网页链接,那么地球上的每个搜索引擎和蜘蛛都已经知道文档在您的站点中的位置。所以这就是你可以做的......

首先将文档文件夹移动到根级别以下,然后使用 FileSystemObject 传递文档。对于超过 2-4 Mb 的文档,您应该以“块”的形式交付它们。

现在您可以在下载脚本中添加一个条件来验证用户的登录状态或重定向到登录。您的评论链接现在看起来像:

http://somesite.com/load-pdf.asp?id=mydocuent.pdf

如果您按文件夹视图提供文档列表,您仍然可以使用 FileSystemObject。

于 2012-12-16T04:17:24.313 回答