ฉันสังเกตว่ามักจะมีโฟลเดอร์ aspnet_client ภายใต้โครงสร้างโฟลเดอร์เว็บ IIS มาตรฐาน สิ่งนี้ใช้ทำอะไร? จำเป็นไหม?
ฉันสังเกตว่ามักจะมีโฟลเดอร์ aspnet_client ภายใต้โครงสร้างโฟลเดอร์เว็บ IIS มาตรฐาน สิ่งนี้ใช้ทำอะไร? จำเป็นไหม?
คำตอบ:
ใน. NET 1.1 วันและก่อนหน้านี้โฟลเดอร์นี้จัดเตรียม ASP.NET ด้วยการสนับสนุน JavaScript สำหรับการควบคุมการตรวจสอบความถูกต้องและฟังก์ชันอื่น ๆ หากคุณไม่มีไซต์. NET 1.1 หรือเก่ากว่าที่ใช้งานอยู่ควรลบออกอย่างปลอดภัย ฉันจะเปลี่ยนชื่อก่อนเพื่อให้แน่ใจว่าจะไม่ก่อให้เกิดปัญหาใด ๆ
นอกเหนือจากสิ่งที่คนอื่นพูดแล้วมักจะสร้างขึ้นโดยเครื่องมือ aspnet_regiis ซึ่งสามารถเรียกใช้โดยสิ่งต่างๆเช่น Windows Update / AddRemove Windows Components / IIS ดังนั้นบางครั้งแม้ว่าคุณจะลบมันไปแล้ว อาจมีวิธีหยุดพฤติกรรมนี้ แต่ฉันไม่พบ (บางทีการเปลี่ยนเวอร์ชันแอปพลิเคชันเป็น. NET 2 จะทำได้จริง)
ดังนั้นหากคุณไม่ใช้คุณสมบัติบางอย่างของ. NET 1.0 / 1.1 (การตรวจสอบความถูกต้องการนำทางอัจฉริยะและอื่น ๆ ) คุณสามารถลบได้โดยไม่มีปัญหาใด ๆ อย่าแปลกใจถ้ามันกลับมา!
aspnet_client เป็นโฟลเดอร์สำหรับ "ทรัพยากรที่ต้องให้บริการผ่าน HTTP แต่ติดตั้งบนพื้นฐานต่อเซิร์ฟเวอร์แทนที่จะเป็นแบบต่อแอปพลิเคชัน"
การใช้ aspnet_client บางส่วนรวมถึงการจัดเก็บทรัพยากร (เช่น JavaScript, รูปภาพ) สำหรับ:
อาจมีการใช้ / will-be เพิ่มเติม (ab) ของโฟลเดอร์นี้ในอนาคต ไม่จำเป็นต้องพูดเนื่องจากมันมีสิ่งที่ "จำเป็นสำหรับแอปพลิเคชันให้ทำงานได้อย่างถูกต้อง" แต่แอปพลิเคชันที่ "ไม่ควรนำไปใช้งาน" จะยังคงเป็นฝันร้ายสำหรับทั้งนักพัฒนาและผู้ดูแลระบบ
ดูเหมือนว่า 'ต้นแบบ' สำหรับเนื้อหาของโฟลเดอร์จะอยู่ใน C: \ inetpub \ wwwroot \ และดูเหมือนว่าสมเหตุสมผลที่จะสมมติว่าหากเว็บไซต์ IIS ใด ๆ ไม่มีทรัพยากร / aspnet_client IIS จะพยายามทำสิ่งที่ถูกต้อง และ ... เป็นทางเลือกสุดท้าย ... สร้างโฟลเดอร์จริงในโฟลเดอร์รูทของเว็บไซต์และคัดลอกไฟล์ที่นั่น ดูเหมือนว่า IIS จะทำสิ่งนี้อย่างน้อยเมื่อมีการเรียกใช้ "ASPNET_regiis / c" ในเซิร์ฟเวอร์ที่กำหนดซึ่งอาจเกิดขึ้นโดยอัตโนมัติที่จุดเชื่อมต่อที่สำคัญบางอย่าง ... เช่นเมื่อมีการใช้การอัปเดตกรอบงาน. NET กับเซิร์ฟเวอร์ที่มีบทบาท IIS
กลยุทธ์ในการจัดการไดเร็กทอรี aspnet_client ได้แก่ : * การระบุไดเร็กทอรีเสมือนที่แมปกับ C: \ inetpub \ wwwroot โดยหวังว่า IIS จะละทิ้งการสร้างไดเร็กทอรีฟิสิคัล * ลบไดเร็กทอรีฟิสิคัลเป็นครั้งคราวหากคุณแน่ใจว่าไซต์ของคุณไม่ ' ไม่จำเป็นต้องใช้และมันรบกวนคุณจริงๆ * ละเว้น aspnet_client * ที่เรียกใช้ "ASPNET_regiis / c" ด้วยตัวคุณเองหากคุณไม่มีโฟลเดอร์และต้องการ
ที่สำคัญที่สุดคือในฐานะนักพัฒนาคุณควรทำความเข้าใจอย่างชัดเจนและบันทึกการอ้างอิงของแอปพลิเคชันของคุณบนไดเร็กทอรี aspnet_client และตรวจสอบให้แน่ใจว่าขั้นตอนการติดตั้งของคุณมีคำแนะนำที่เกี่ยวข้องเพื่อให้แน่ใจว่ามีไดเร็กทอรีอยู่ อย่างไรก็ตามคุณไม่ควรกังวลที่จะจัดหาจริงๆไดเร็กทอรีเป็นส่วนหนึ่งของเว็บแอปพลิเคชันหรือเว็บไซต์แบบแพ็กเกจของคุณคุณจะทำสิ่งนี้ได้อย่างไรสำหรับเฟรมเวิร์ก. NET แต่ละเวอร์ชันซึ่งเซิร์ฟเวอร์จะเห็นตลอดอายุการใช้งานของแอปพลิเคชันของคุณ!
บางลิงค์ฉันจะกลับมาในภายหลัง:
นอกจากนี้ยังมีไอคอนและสคริปต์บางอย่างที่จำเป็นสำหรับรายงานคริสตัลเพื่อให้ทำงานได้อย่างถูกต้องแม้ในเวอร์ชันที่ช้ากว่า 1.1
C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13
ไม่แน่ใจว่าเป็นสิ่งที่ถูกต้องหรือไม่ แต่ฉันเพิ่งคัดลอกโฟลเดอร์ aspnet_client ทั้งหมดจากรูทไปยังไดเร็กทอรีอินสแตนซ์ Ripplestone ของฉัน
โฟลเดอร์นี้มีไว้สำหรับจัดเก็บ Javascript ฝั่งไคลเอ็นต์ซึ่ง ASP.NET ใช้สำหรับการตรวจสอบความถูกต้อง
ควรจะลบได้อย่างปลอดภัย
คิดว่าฉันจะเพิ่มสิ่งนี้ที่นี่เพราะนี่คือลิงค์ที่ฉันถูกนำไปยังเมื่อฉัน googled คำถามนี้ เห็นได้ชัดว่ามี. NET 4.0 และใหม่กว่าโฟลเดอร์นี้ไม่จำเป็นอีกต่อไปและสามารถลบออกได้โดยไม่มีปัญหา
ถ้าคุณใช้ Installshield เพื่อกำหนดค่าเว็บไซต์ ASP.net โปรดทราบว่าคุณลักษณะนี้มีอยู่ใน Installshield 2010 และไม่มีใน Installshield 2012