หน้าเว็บ ASP เป็นหน้าเว็บแบบไดนามิกจริง ๆ ซึ่งดำเนินการและแยกวิเคราะห์ทางฝั่งเซิร์ฟเวอร์ บางครั้งมันก็แปลกมาก ฉันมักจะพบกับสถานการณ์ที่ไม่สามารถเปิดหน้าเว็บ asp ได้ ตัวแก้ไขด้านล่างจะจัดเรียงวิธีแก้ปัญหาบางอย่างสำหรับหน้าเว็บ asp ที่ไม่สามารถเปิดได้
วันนี้ฉันพบปัญหา ไม่สามารถเปิดหน้าเว็บ asp ที่ฉันใช้งานได้ดี ขณะเดียวกัน การใช้งาน CPU ของ inetinfo.exe ก็สูงมากเกือบถึง 100% หลังจากดูบันทึกข้อผิดพลาดของระบบ ฉันพบว่าบริการที่เรียกว่า MS DTC ไม่สามารถเริ่มทำงานได้ วิธีแก้ไขมีดังนี้:
ดำเนินการคำสั่งต่อไปนี้ภายใต้ CMD:
- ซีดี%windir%/system32/inetsrv
- rundll32wamreg.dll สร้าง IISPackage
- regsvr32asptxn.dll
ในตอนท้าย regsvr32 asptxn.dll ล้มเหลว หลังจากรีสตาร์ทเครื่องแล้ว ให้รันคำสั่งสามบรรทัดข้างต้นอีกครั้ง ในที่สุดบริการ MS DTC ก็กลายเป็นปกติ แต่ปัญหาไม่ได้รับการแก้ไข ฉันตรวจสอบออนไลน์แล้วพบว่าเป็นปัญหากับ iis และจำเป็นต้องติดตั้งใหม่
อาการ: IIS ช้ามาก ไม่รู้จักหน้า asp และกระบวนการของระบบ กระบวนการ inetinfo.exe คิดเป็น 100% ของ CPU
1. ถอนการติดตั้ง IIS
2. ลบ %windir%/system32/inetsrv.
3. ลบ %windir%/iisX.log เนื่องจาก X เป็นเวอร์ชัน IIS
4. ติดตั้ง IIS ใหม่
หลังจากทำตามขั้นตอนข้างต้น ฉันพบว่าปัญหายังคงอยู่ ดังนั้นฉันจึงลองวิธีแก้ไขปัญหาอื่น: ลบบันทึก IIS บันทึกถูกเก็บไว้ใน %windir%/SYSTEM32/LogFiles/W3SVC1 เพียงลบบันทึกของวันนี้
แม้ว่าปัญหาที่ไม่สามารถเปิดเว็บเพจ asp ได้ได้รับการแก้ไขแล้ว แต่ asp.net ไม่สามารถใช้งานได้เนื่องจากเวอร์ชัน IIS ต่ำเกินไป ดังนั้นฉันจึงติดตั้งใหม่โดยใช้ดิสก์การติดตั้ง asp.net ที่ติดตั้งไว้ล่วงหน้า แต่หน้าเว็บ aspx ยังคงถือว่าเป็นหน้า asp และไม่สามารถแยกวิเคราะห์ได้ตามปกติ
เมื่อเริ่มการดีบัก ระบบจะแจ้งว่า: ไม่สามารถเริ่มการดีบักบนเว็บเซิร์ฟเวอร์ได้
ดังนั้นดำเนินการบนบรรทัดคำสั่ง:
- cdwindows/microsoft.net/framework/v2.0.50727
- aspnet_regiis/r
เลือกแอปพลิเคชันที่ระบุบนเว็บไซต์เริ่มต้นของ IIS คลิกคุณสมบัติ -> ความปลอดภัยของไดเรกทอรี -> ปุ่มแก้ไขของการรับรองความถูกต้องและการควบคุมการเข้าถึง และตรวจสอบรวมการรับรองความถูกต้องของ Windows
หากต้องการตั้งค่า IIS ให้คลิกขวาที่ไดเรกทอรีเสมือนหรือเว็บไซต์ คุณสมบัติ-"aspnet-" เลือกเวอร์ชัน aspnet และเลือก 2.0
ในที่สุด หน้าเว็บ aspx ก็สามารถเปิดได้ตามปกติ asp.net ก็สามารถดีบั๊กได้เช่นกัน และปัญหาก็ได้รับการแก้ไขเรียบร้อยแล้ว
ฉันควรทำอย่างไรหากเปิดหน้าเว็บ ASP ที่สร้างด้วย DW โดยใช้เบราว์เซอร์และแจ้งให้ดาวน์โหลด หลังจากดาวน์โหลด ฉันจะเปิดอีกครั้งโดยใช้ DW
จริงๆ แล้วหน้าเว็บ ASP เป็นโปรแกรม ASP ถูกดำเนินการและแยกวิเคราะห์บนฝั่งเซิร์ฟเวอร์ เรียกว่าหน้าเว็บแบบไดนามิกเนื่องจากหน้าเว็บที่ไคลเอ็นต์เข้าถึงถูกคำนวณโดยเซิร์ฟเวอร์แบบเรียลไทม์ตามโปรแกรม ASP ที่คุณร้องขอ ตัวอย่างเช่น หากคุณเยี่ยมชมหน้าเว็บ ASP ในตอนเช้า มันจะบอกว่าสวัสดีตอนเช้า และเมื่อคุณเยี่ยมชมมันในช่วงบ่าย มันก็จะบอกว่าสวัสดีตอนบ่าย นี่เป็นเพราะว่าการตัดสินเวลาถูกเขียนในโปรแกรม ASP แต่ HTML ธรรมดาสามารถทำได้ แสดงเนื้อหาแบบคงที่เท่านั้น ไม่สามารถให้ผลตอบรับแบบไดนามิกได้
คุณสามารถติดตั้ง IIS เพื่อแก้ไขปัญหาได้ มีวิธีการกำหนดค่ามากมายบนอินเทอร์เน็ต หากเป็นพาร์ติชันที่จัดรูปแบบ NTFS โปรดใส่ใจกับการตั้งค่าการอนุญาต มิฉะนั้น หน้าเว็บอาจไม่สามารถแยกวิเคราะห์ได้อย่างถูกต้อง
เนื้อหาข้างต้นเป็นเรื่องเกี่ยวกับวิธีแก้ปัญหาที่ไม่สามารถเปิดหน้าเว็บ ASP ได้ ฉันหวังว่ามันจะเป็นประโยชน์สำหรับทุกคนในการเรียนรู้ ASP