คำอธิบายฟังก์ชัน: หลังจากอัปโหลดไฟล์รูปภาพไปยังไดเร็กทอรีที่ระบุ ชื่อไฟล์ที่ส่งผ่าน URL จะถูกเพิ่มไปยังไดเร็กทอรีที่ไฟล์นั้นอยู่ตามเส้นทางแบบเต็มของไฟล์ จากนั้นสตรีมข้อมูลไบนารีของไฟล์จะถูกเขียนไปยังหน้าบริการ ดังนั้นจึงบรรลุผลของการซ่อนที่อยู่ที่แท้จริงของรูปภาพ และป้องกันการอ้างอิงภายนอกไปยังรูปภาพ
นี่คือคำพูด:
< %@LANGUAGE="VBSCRIPT " CODEPAGE="936"%>
-
ตัวเลือกที่ชัดเจน
Const SysUrl=" http://www.80Boby.com/uImg/ "
ฟังก์ชัน ReadBinFile(ชื่อไฟล์)
ติ่ม objStream,bin
ตั้ง objStream = Server.CreateObject("ADODB.Stream")
objStream.เปิด
objStream.Type = 1
objStream.LoadFromFileชื่อไฟล์
bin = objStream อ่าน
objStream ปิด
ReadBinFile = bin
ฟังก์ชันสิ้นสุด
ฟังก์ชั่น isSelfRefer()
หรี่ sHttp_Referer, sServer_Name
sServer_Name = CStr (คำขอ ServerVariables ("HTTP_REFERER"))
ถ้า instr(sServer_Name,"80boby.com")<>0 หรือ instr(sServer_Name,"freeat63.cn")<>0 แล้ว
IsSelfRefer = จริง
อื่น
IsSelfRefer = เท็จ
สิ้นสุดถ้า
ฟังก์ชันสิ้นสุด
ถ้า request.QueryString("Mark")="getPic" แล้ว
Dim RealUrl,fso
หรี่ uFileName:uFileName=Request.QueryString("x")
RealUrl=Server.MapPath("เส้นทางจริงของไฟล์"&uFileName)
ตั้งค่า fso = Server.CreateObject("Scripting.FileSystemObject")
ถ้าไม่ใช่(fso.FileExists(RealUrl)) ดังนั้น RealUrl=Server.MapPath("logo.gif")
ถ้าไม่ใช่ (isSelfRefer) แล้ว
RealUrl=Server.MapPath("logo.gif")
สิ้นสุดถ้า
response.contenttype = "รูปภาพ/jpeg"
การตอบสนอง BinaryWrite ReadBinFile (RealUrl)
การตอบสนองสิ้นสุด
สิ้นสุดถ้า
-