แนะนำ: วิธีการใช้ ASP เพื่อรับที่อยู่ของ IP จริงของลูกค้า? ในการรับที่อยู่ IP จริงของไคลเอนต์ผ่านพร็อกซีเซิร์ฟเวอร์คุณต้องใช้ request.ServerVariables (http_x_forwarded_for) เพื่ออ่าน แต่ควรสังเกตว่าไม่ใช่ทุกพร็อกซีเซิร์ฟเวอร์ที่สามารถใช้คำขอได้ ServerVariab
โดยทั่วไปแล้วเว็บไซต์ขนาดใหญ่มีโอกาสน้อยกว่าที่จะใช้ ASP สำหรับสถาปัตยกรรม แต่ ASP ยังคงมีขอบเขตตลาดขนาดใหญ่ในเว็บไซต์ธุรกิจขนาดเล็กและขนาดกลาง ASP ได้รับการสนับสนุนจากผู้ดูแลไซต์ขนาดเล็กและขนาดกลางสำหรับวงจรการพัฒนาที่เรียบง่ายและการบำรุงรักษาง่าย อย่างไรก็ตามเท่าที่ฉันรู้ผู้ที่ใช้ ASP เพื่อรวมและอัปเดตและบำรุงรักษาเว็บไซต์เป็นเรื่องธรรมดาสำหรับเว็บไซต์ธุรกิจจริงหรือเว็บไซต์ทางเทคนิคที่ค่อนข้างครบกำหนด เว็บไซต์เพิ่มเติมมีคอลัมน์อิสระบางส่วนโดยใช้โปรแกรม ASP คุณสมบัตินี้คือการจัดการไซต์กระจัดกระจายเกินไป ตัวอย่างเช่นเมื่อใดก็ตามที่คุณป้อนการจัดการคอลัมน์คุณต้องป้อนบัญชีและรหัสผ่านอื่น ไม่เพียง แต่จะเสียพลังงานของผู้ดูแลระบบเท่านั้น แต่ยังเพิ่มความยากลำบากในการบำรุงรักษาเว็บไซต์ โปรแกรม ASP จำนวนมากที่ใช้ในคอลัมน์เดียวที่เราเห็นคือซอร์สโค้ดที่ค้นหาจากอินเทอร์เน็ตซึ่งจะคุกคามความปลอดภัยของเว็บไซต์ของคุณเนื่องจากซอร์สโค้ดที่ให้ไว้บนอินเทอร์เน็ตเปิดอยู่และทุกคนสามารถศึกษารหัสนี้ได้ เมื่อคุณรู้ว่าความปลอดภัยของ ASP เป็นข้อกังวลระยะยาวสำหรับผู้ใช้และรหัสโอเพนซอร์สนั้นอันตรายยิ่งขึ้น แน่นอนฉันไม่เห็นด้วยกับทุกคนที่ใช้ซอร์สโค้ดบนอินเทอร์เน็ต ฉันแค่หวังว่าคุณจะให้ความสนใจกับปัญหานี้และไม่เชื่ออย่างเต็มที่ในการใช้อุดมการณ์ คุณยังต้องปรับเปลี่ยนพื้นที่ที่คุณต้องการแก้ไขและคุณยังต้องแก้ไขพื้นที่ที่คุณต้องการแก้ไข (แน่นอนมันไม่ได้ขอให้คุณแก้ไขข้อมูลลิขสิทธิ์ของผู้อื่น)เพื่อสรุปฉันคิดว่าทุกคนที่มีความเข้าใจบางอย่างของ ASP สามารถพัฒนาระบบสถานีที่สมบูรณ์และรวมเข้าด้วยกัน วัตถุประสงค์ของหัวข้อนี้คือเพื่อแนะนำทุกคนถึงวิธีการสร้างชุดเว็บไซต์แบบไดนามิกที่สมบูรณ์
เพื่อให้ผู้อ่านทุกระดับเข้าใจบทความนี้จำเป็นต้องพูดคุยเกี่ยวกับคำต่อไปนี้ก่อน:
หากคุณเป็นผู้เริ่มต้นคุณควรทำอะไร?
VBScript ที่จำเป็นและ JavaScript VBS ซึ่งเป็นภาษาการเขียนโปรแกรม ASP หลักมาจาก Visual Basic คนที่เรียนรู้ VB สามารถควบคุมได้อย่างรวดเร็ว จำเป็นต้องพูด JavaScript ถูกฝังอยู่ในหน้าเว็บและไคลเอนต์ใช้ภาษาสคริปต์ธรรมดา คุณควรมีความรู้ภาษา HTML จำนวนหนึ่งมิฉะนั้นคุณจะรู้สึกรำคาญมาก
พื้นฐานของคำสั่ง SQL ก็เป็นพื้นฐาน!
ในช่วงแรกคุณไม่จำเป็นต้องเชี่ยวชาญทุกอย่างเพียงทำพื้นฐาน
วิชาบังคับก่อน: เราจะใช้คำสั่งและฟังก์ชั่นพื้นฐานที่สุดในการเขียนระบบไซต์ที่สมบูรณ์สำหรับเว็บไซต์ไดนามิกเว็บ
ตราบใดที่คุณอ่านหัวข้อนี้อย่างรอบคอบคุณสามารถฝึกฝนแนวคิดของการพัฒนาเว็บไซต์และสามารถให้แอปพลิเคชันที่ใช้งานได้จริง แน่นอนเมื่อคุณเรียนรู้เพิ่มเติมคุณสามารถเพิ่มคุณสมบัติเพิ่มเติมหรือปรับปรุงอัลกอริทึมโปรแกรมของคุณ
(1) ดำเนินการวิเคราะห์ความต้องการของเว็บไซต์:
หลายคนเพิกเฉยต่อประเด็นนี้ พวกเขาเชื่อว่าการพัฒนาโปรแกรมเว็บไซต์ไม่จำเป็นต้องมีแนวคิดเกี่ยวกับวิศวกรรมซอฟต์แวร์ซึ่งจะนำไปสู่เว็บไซต์ที่ไม่เป็นระเบียบ ตัวอย่างเช่นบางคนไม่คิดเกี่ยวกับเว็บไซต์ใด ๆ ที่พวกเขาต้องการพัฒนาและเริ่มเขียนโค้ดโดยตรงและเขียนสิ่งที่พวกเขาคิด จนกว่าพวกเขาจะเขียนเสร็จพวกเขาพบว่าฉันยังต้องไม่มีฟังก์ชั่นอื่นและจากนั้นพวกเขากลับไปเพิ่มรหัสทันที ด้วยวิธีนี้โปรแกรมมีแนวโน้มที่จะเกิดข้อผิดพลาด ดังนั้นในตอนแรกขอแนะนำให้คุณกำหนดการวิเคราะห์ข้อกำหนดของการพัฒนาเว็บไซต์เช่นวิศวกรรมซอฟต์แวร์ซึ่งควรรวมถึงข้อกำหนดพื้นฐานของระบบเว็บที่พัฒนาขึ้นเช่น: ฟังก์ชั่นประสิทธิภาพฐานผู้ใช้กระบวนการข้อมูลพื้นฐานและกระบวนการประมวลผลและข้อกำหนดด้านความปลอดภัยและการรักษาความลับ เป้าหมายเงื่อนไขสมมติฐานข้อ จำกัด ฯลฯ ของระบบเว็บ
โดยเฉพาะอย่างยิ่งสำหรับเว็บไซต์ของเรามันเป็นเว็บไซต์ทางเทคนิคซึ่งควรรวมถึงระบบข่าวระบบบทความระบบดาวน์โหลด ฯลฯ ดังนั้นสิ่งที่ฟังก์ชั่นระบบเหล่านี้จำเป็นต้องมีคือปัญหาที่เราต้องวิเคราะห์
มาวิเคราะห์ฟังก์ชั่นที่จะนำไปใช้จากตัวอย่าง:
ระบบข่าว: สิ่งที่สำคัญที่สุดเกี่ยวกับระบบข่าวคือมันสามารถถ่ายทอดข่าวไปยังผู้ใช้แบบเรียลไทม์ ระบบข่าวควรมีฟังก์ชั่นอะไรบ้าง? เวลาตีพิมพ์จำนวนคลิกจำนวนแทรกและบันทึกบางอย่างไปยังผู้เขียนแหล่งข่าว แน่นอนว่าสิ่งเหล่านี้ง่ายต่อการใช้งานฟังก์ชั่น การแทรกรูปภาพสามารถแก้ไขได้โดยใช้ฟังก์ชั่น HTML ตารางการแปลง UBB หรืออัพโหลดรูปภาพ วิธีการเหล่านี้จะไม่ถูกอธิบายทีละข้อในบทความนี้ คุณสามารถอ้างถึงข้อมูลที่เกี่ยวข้อง
ในความเป็นจริงไม่ว่าคุณจะมีระบบอะไรหลังจากที่คุณวิเคราะห์ความต้องการในรายละเอียดในตอนแรกมันจะง่ายขึ้นและมีประสิทธิภาพมากกว่าการเขียนทุกที่ที่คุณคิด หากสะดวกจะถูกบันทึกโดยใช้คอมพิวเตอร์หรือกระดาษเพื่อบันทึกข้อกำหนดการพัฒนาของระบบเว็บและยังสามารถอ้างอิงได้ในระหว่างกระบวนการพัฒนา หัวข้อหนึ่งที่ฉันต้องพูดถึงที่นี่เป็นเรื่องเกี่ยวกับการตรวจสอบผู้ใช้ โดยทั่วไปเราใช้เซสชันและคุกกี้สำหรับการตรวจสอบผู้ใช้ ตัวแปรเซสชันและคุกกี้เป็นประเภทเดียวกัน หากผู้ใช้ตั้งค่าเบราว์เซอร์ของเขาให้เข้ากันไม่ได้กับคุกกี้ใด ๆ ผู้ใช้ไม่สามารถใช้ตัวแปรเซสชันและคุกกี้นี้ได้ โดยทั่วไปแล้วฉันขอแนะนำให้ใช้เซสชันสำหรับผู้ดูแลเว็บไซต์เพราะธีมของเราคือการพัฒนาเว็บไซต์ดังนั้นผู้ดูแลระบบจะต้องกระโดดในหลายหน้าการจัดการ เซสชั่นสะดวกมากที่นี่ หากผู้ใช้ได้รับการตรวจสอบแล้วคุกกี้ก็สามารถใช้งานได้ ตัวอย่างเช่นผู้ใช้สามารถตั้งค่าเบราว์เซอร์บังคับให้จัดเก็บคุกกี้บนคอมพิวเตอร์ สามารถทำได้ง่ายโดยใช้แอตทริบิวต์การตอบสนองของการตอบสนอง อีกประเด็นหนึ่งคือข้อมูล SessionID นั้นง่ายมากที่จะสูญเสีย สำหรับกลุ่มเช่นผู้ใช้ที่เข้าถึงมาเป็นเวลานานจำเป็นต้องสร้าง ID ผู้ใช้โดยจัดเก็บคุกกี้เฉพาะในเว็บเบราว์เซอร์ของผู้ใช้และบันทึกข้อมูลคุกกี้ลงในฐานข้อมูล
ในส่วนข้างต้นเราได้พูดคุยเกี่ยวกับการวิเคราะห์ข้อกำหนดเบื้องต้นของการพัฒนาเว็บไซต์ซึ่งฉันคิดว่าเป็นขั้นตอนที่สำคัญมากในด้านวิศวกรรมเว็บไซต์
(2) จัดระเบียบและจัดการโครงสร้างไซต์
บ่อยครั้งเมื่อพัฒนาเว็บไซต์ในระดับที่แน่นอนมันเป็นเรื่องน่าสังเกตที่จะทำให้ไซต์มีโครงสร้างไดเรกทอรีที่ดี แอปพลิเคชั่นทางธุรกิจมักต้องการความสามารถในการเรียกใช้สคริปต์และส่วนประกอบภายในธุรกรรม ธุรกรรมคือการดำเนินการฝั่งเซิร์ฟเวอร์ ในระยะสั้นแม้ว่าการดำเนินการมีหลายขั้นตอนเช่นการสั่งซื้อการดูคำสั่งซื้อการพิมพ์คำสั่ง ฯลฯ มันสามารถกลับมาได้โดยรวมว่าการดำเนินการสำเร็จหรือล้มเหลว ผู้ใช้สามารถสร้างสคริปต์ ASP ที่ทำงานภายในธุรกรรม หากส่วนใดส่วนหนึ่งของหนังสือการสอนล้มเหลวการทำธุรกรรมทั้งหมดจะสิ้นสุดลง
สิ่งที่เราต้องการอธิบายในรายละเอียดที่นี่ไม่ใช่การประยุกต์ใช้สคริปต์ธุรกรรมทั่วทั้งเว็บไซต์ แต่จุดประสงค์ในการป้องกันไม่ให้คุณสับสนกับไฟล์และการดำเนินงานจำนวนมากในระหว่างการพัฒนา
จัดระเบียบชื่อไฟล์อย่างสมเหตุสมผล ตัวอย่างเช่น: เราตั้งชื่อหน้าการจัดการ admin.asp และหน้าในหน้าการจัดการที่ทำงานในแต่ละคอลัมน์สามารถขีดเส้นใต้หลังจากผู้ดูแลระบบจากนั้นตั้งชื่อคอลัมน์เช่นหน้าการจัดการข่าว adminic
เกี่ยวกับตำแหน่งของไฟล์ ฉันแค่อธิบายมันในแบบของฉันและฉันเชื่อว่าคุณสามารถมีความคิดเห็นของคุณเอง หน้าปฏิบัติการการจัดการทั้งหมดอยู่ภายใต้ไดเรกทอรีเดียวกันเพื่ออำนวยความสะดวกในการจัดการและการจัดสรรสิทธิ์ หน้าผู้ใช้ของแต่ละคอลัมน์สามารถวางไว้ในไดเรกทอรีเพื่อการจัดการที่ง่าย ฐานข้อมูลสามารถวางไว้ภายใต้ไดเรกทอรีแบบครบวงจร
วิธีลดจำนวนไฟล์ ไม่จำเป็นต้องสร้างหน้าใหม่มากมายสำหรับการเพิ่มแต่ละการลบการดัดแปลงหรือการดำเนินการอื่น ๆ คุณสามารถใช้พารามิเตอร์เพื่อลดหน้า ตัวอย่างเช่นในหน้าการจัดการ admin_news.asp ดำเนินการเพิ่มเติมเมื่อ admin_news.asp? action = addnew และดำเนินการลบเมื่อ admin_news.asp? action = del ซึ่งจะช่วยเพิ่มระดับการรวมเว็บไซต์ของคุณอย่างมาก
รหัสที่ใช้ซ้ำได้ รหัสจำนวนมากสามารถนำกลับมาใช้ใหม่ได้เช่นตารางการแปลงของ UBB ฯลฯ และสามารถวางแยกต่างหากในไดเรกทอรี
(3) การจัดการการพัฒนาแบ็กเอนด์
ฉันไม่รู้ว่านักพัฒนาทั้งหมดเป็นเหมือนฉันพวกเขาจะทำการพัฒนาแบ็กเอนด์ก่อนที่จะดำเนินการพัฒนาส่วนหน้า หรือคุณกำลังทำมันด้วยกัน อย่างไรก็ตามฉันคิดว่ามันเหมาะสมกว่าที่จะพัฒนาแบ็กเอนด์ก่อน เราได้กล่าวก่อนหน้านี้ว่าเราต้องวิเคราะห์ระบบก่อนและมีความคิดที่ชัดเจนว่าฟังก์ชั่นใดที่จะบรรลุ โดยการทำเช่นนี้คุณจะได้ผลลัพธ์สองครั้งด้วยความพยายามครึ่งหนึ่งและจะลดความผิดพลาดที่ไม่จำเป็นมากมาย การจัดการแบ็กเอนด์ไม่มีอะไรมากไปกว่าฟังก์ชั่นต่อไปนี้:
1) การยืนยันผู้ใช้
2) เพิ่มข้อมูลเว็บไซต์
3) แก้ไขข้อมูลเว็บไซต์
4) ลบข้อมูลเว็บไซต์
5) การตั้งค่าระบบไซต์
6) สถิติเยี่ยมชมไซต์
7) รวบรวมข้อมูลผู้ใช้
-
วิธีจัดการสิ่งที่พวกเขาเห็นด้วยคือปัญหาที่เราต้องแก้ไข ตัวอย่างเช่นการตรวจสอบผู้ใช้สามารถนำไปใช้เช่นนี้:
-
-
ชื่อผู้ใช้ = แทนที่ (TRIM (คำขอ (ชื่อผู้ใช้)), ',)
รหัสผ่าน = แทนที่ (ตัดแต่ง (คำขอ (รหัสผ่าน)), ',)
ตั้งค่า rs = server.createObject (adodb.recordset)
SQL = เลือก * จากผู้ดูแลระบบโดยที่รหัสผ่าน = '& รหัสผ่าน &' และชื่อผู้ใช้ = '& ชื่อผู้ใช้ &'
Rs.Open SQL, Conn, 1,1
ถ้าไม่ใช่ (Rs.Bof และ Rs.EOF) แล้ว
ถ้ารหัสผ่าน = RS (รหัสผ่าน) จากนั้น
เซสชัน (admin) = rs (ชื่อผู้ใช้)
เซสชัน (Flag) = RS (F
แบ่งปัน: ใช้ ASP Trojan เพื่อใช้ FTP และการบีบอัด สิ่งที่ลำบากที่สุดเกี่ยวกับการวางเว็บไซต์บนไก่เนื้อคือการอัปเดตและอัปโหลดไฟล์จำนวนมาก บริการเทอร์มินัลสามารถค้นพบได้ง่ายในช่วงกลางวันและคุณไม่สบายใจเมื่อคุณเปิด FTP ฉันเดินไปรอบ ๆ อินเทอร์เน็ตและพบว่ามันสามารถนำไปใช้ได้อย่างง่ายดายโดยการรวมการอัปโหลดแบบปราศจากส่วนประกอบและโทรจัน ASP Trojans ASP คุ้นเคยกับทุกคนมาก