asp隐藏文件路径的问题!
<!--#include file="conn.asp"-->
<%
From_url = Cstr(Request.ServerVariables("HTTP_REFERER"))
Serv_url = Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(From_url,8,len(Serv_url)) <> Serv_url then
response.write "非法链接!" '防止盗链
response.end
end if
Dim Stream
Const adTypeBinary = 1
Set Stream = server.CreateObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
id1=Request("file")
set rs3=server.CreateObject("adodb.recordset") '找图片谱
rs3.open "select * from score_image where id ="+id1,bb,1,1
if not rs3.bof then
TrueFileName = rs3("score_image_way")
end if
Stream.LoadFromFile Server.MapPath(TrueFileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Set rs3 = Nothing
%>
-----------------------------------------------
以上,是我的down.asp的代码,其中score_image_way字段为路径和文件名,例如"asd/asdf/aaa.gif"
问题是,图片格式的文件,可以通过这个页面打开,能够隐藏文件名和路径!
但是,rar的文件以及其他格式的文件就不行,打开后显示乱码!
我自己估计问题的原因可能是通过二进制输出,图片文件可以直接显示,但rar文件也按照二进制输出就乱码,而且文件名没有!
我想.能不能让不是图片格式的文件,直接下载!!
需要改动那些代码呢?
谢谢!!我很急!!!
参考答案:路径只可以在代码里隐藏,但是如果在前台显示出来时,必定会把路径暴露