下面是解我發現,使用ASP經典:
<%
Option Explicit
Response.Buffer = True
If (not Session("Logged")) Then Response.End
Dim objFso
Dim objStream
Dim strFileName
Dim strFilePath
strFileName = "App.exe"
strFilePath = "d:\yoursitefolder\protectedfolder\"
Set objFso = Server.CreateObject("Scripting.FileSystemObject")
If objFso.FileExists(strFilePath & strFileName) Then
Response.AddHeader "Content-disposition", "filename=" & strFileName
Response.ContentType = "application/octet-stream"
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "Expires", "0"
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 1
objStream.Open
objStream.LoadFromFile strFilePath & strFileName
Response.BinaryWrite(objStream.Read())
objStream.Close
Set objStream = Nothing
End If
Set objFso = Nothing
%>
簡單的解決方案:。嵌入在下載網址一次性令牌一旦令牌的使用,您記錄它作爲使用,決不允許它再次使用 –
@Marc B,我想理解你的想法...可以喲你舉個例子嗎?也許我可以獲得更多信息的鏈接?謝謝! – Guybrush
@Paruba在你的數據庫中存儲了一些唯一的關鍵字(token),然後在你提供的鏈接(建議將它編碼爲[tag:Base64])時將它用作QueryString參數,當用戶通過令牌訪問頁面時您可以通過調用數據庫來檢查它,然後禁用它(刪除或歸檔它)。這種方法的美妙之處在於,你也可以做一些事情,比如允許一定數量的下載,然後禁止,所有這些都是通過根據你的令牌存儲一些元數據,比如'download count','last download'(datetimestamp)......可能性是無止境的。 – Lankymart