แนะนำ: ASP พื้นฐานการสอน: การเรียนรู้การประยุกต์ใช้โปรแกรมย่อยใน ASP ใน ASP คุณสามารถเรียกโปรแกรมของคุณเองผ่าน VBScript และวิธีอื่น ๆ ตัวอย่าง: เรียกรูทีนย่อยโดยใช้ VBScript วิธีเรียกรูทีนย่อยที่เขียนใน VBScript จาก ASP ต่อไปนี้เป็นเนื้อหาที่ยกมา
หลังจากผ่านพร็อกซีเนื่องจากมีการเพิ่มเลเยอร์กลางระหว่างไคลเอนต์และบริการเซิร์ฟเวอร์ไม่สามารถรับ IP ของไคลเอนต์ได้โดยตรงและแอปพลิเคชันฝั่งเซิร์ฟเวอร์ไม่สามารถกลับไปที่ไคลเอนต์ได้โดยตรงผ่านที่อยู่การส่งต่อ อย่างไรก็ตามใน http_x_forwarded _ ???? ใช้เพื่อติดตามที่อยู่ IP ของไคลเอนต์ดั้งเดิมและที่อยู่เซิร์ฟเวอร์ที่ร้องขอโดยไคลเอนต์ดั้งเดิม:
นี่คือ 2 ตัวอย่างเพื่อแสดงหลักการออกแบบของแอปพลิเคชันความเข้ากันได้ของแคช:
'สำหรับแอปพลิเคชัน ASP ที่ต้องการที่อยู่ของชื่อเซิร์ฟเวอร์: อย่าอ้างถึง http_host/server_name โดยตรงและตรวจสอบว่ามี http_x_forwarded_server โดยตรง
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: ฟังก์ชั่น gethostname () Dim HostName เป็น string = HostName = request.ServerVariables (http_host) ถ้าไม่ใช่ isdbnull (request.serverVariables (http_x_forwarded_host)) จากนั้น ถ้า len (trim (request.serverVariables (http_x_forwarded_host)))> 0 แล้ว hostname = request.serverVariables (http_x_forwarded_host) สิ้นสุดถ้า สิ้นสุดถ้า กลับ Hostnmae ฟังก์ชันสิ้นสุด |
// สำหรับแอปพลิเคชัน PHP ที่ต้องการบันทึก IP ไคลเอนต์: อย่าอ้างถึง Remote_ADDR โดยตรง แต่ใช้ http_x_forwarded_for
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: ฟังก์ชั่น getUserip () { $ user_ip = $ _Server [remote_addr]; ถ้า ($ _Server [http_x_forwarded_for]) { $ user_ip = $ _Server [http_x_forwarded_for]; - - |
หมายเหตุ: HTTP_X_FORWARDED_FOR หากคุณผ่านเซิร์ฟเวอร์พร็อกซีระดับกลางหลายตัวมันจะเป็นที่อยู่หลายตัวหารด้วยเครื่องหมายจุลภาคได้อย่างไร บ่อยครั้งที่ฟิลด์ที่ใช้บันทึกที่อยู่ลูกค้าถูกตั้งค่าเป็น 20 ไบต์ซึ่งดูเหมือนว่าเล็กเกินไป
ฉันมักจะเห็นข้อความแสดงข้อผิดพลาดดังต่อไปนี้:
ข้อผิดพลาดของเอ็นจินฐานข้อมูล Microsoft Jet '80040E57' มีขนาดเล็กเกินไปที่จะยอมรับปริมาณข้อมูลที่จะเพิ่ม ลองแทรกหรือวางข้อมูลน้อยลง
/inc/char.asp, บรรทัด 236
เหตุผลก็คือเมื่อออกแบบที่อยู่การเข้าถึงไคลเอนต์จะเป็นการดีที่สุดที่จะออกแบบขนาดฟิลด์ IP ของผู้ใช้ที่เกี่ยวข้องมากกว่า 50 ไบต์
แบ่งปัน: กลไกการทนต่อความผิดพลาดในรหัส ASP เป็นตัวอย่าง ASP ที่ได้รับความนิยมมากที่สุดในประเทศจีนฉันไม่รู้ว่ามีกี่คนที่คิดเกี่ยวกับแนวคิดของการยอมรับความผิดพลาดเมื่อเขียนรหัส ทำไม?