การตั้งค่า“. NET Framework Version” ใน IIS ทำอะไรได้จริง


19

ดูเหมือนว่าจะเป็นคำถามที่ชัดเจน แต่ฉันกำลังพยายามหาปุ่ม "Change .NET Framework Version" บนแผงการกำหนดค่า IIS ระดับบนสุดที่เปลี่ยนแปลงไป บนเซิร์ฟเวอร์ทั้งหมดของฉันจะมี v2.0 เสมอ กลุ่มแอปพลิเคชันของฉันเป็นส่วนผสมของ v2.0 และ v4.0 และแอปพลิเคชัน v4.0 ทั้งหมดของฉันทำงานได้อย่างถูกต้อง

ดังนั้นการควบคุมหมายเลขรุ่นนี้คืออะไร? อะไรจะขึ้นอยู่กับสิ่งนี้ที่จะไม่ถูกกำหนดให้กับกลุ่มแอปพลิเคชัน ดูเหมือนจะแปลก

การตั้งค่าดังกล่าวเป็นภาพด้านล่าง:

ป้อนคำอธิบายรูปภาพที่นี่

คำตอบ:


13

มันทำให้ IIS ชี้ไปที่ไฟล์คอนฟิกระดับรากที่ต่างกันสำหรับ. NET ไฟล์ระดับรูทเหล่านี้อยู่ภายในโฟลเดอร์การติดตั้งเฟรมเวิร์ก%systemroot%\Microsoft.NET\Framework\<version>\CONFIG

IIS ค้นหาไฟล์กำหนดค่าสำหรับตัวเอง %systemroot%\system32\inetsrv\config\applicationHost.config
และใน. NET ใน
%systemroot%\Microsoft.NET\Framework\<version>\CONFIG\machine.config

การเปลี่ยน. NET Version จะทำการสลับไปที่ machine.config ตัวอย่างเช่นการเปลี่ยนเป็น v2.050727 จะทำให้ดู%systemroot%\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.configได้ เปลี่ยนเป็น v4.0.30319 จะดูได้%systemroot%\Microsoft.NET\Framework\v4.0.30319\CONFIG\machine.config

แอปพลิเคชันสืบทอดสิ่งต่าง ๆ จากการตั้งค่าระดับราก

ดูที่บทความนี้ซึ่งแสดงโครงร่างระบบการกำหนดค่าและแสดงลำดับชั้นการกำหนดค่า


3

ตาม TechNetการตั้งค่านี้จะควบคุมเวอร์ชัน. NET Framework "Default"

ที่ระดับกลุ่มแอปพลิเคชันการตั้งค่านี้ควบคุมเฟรมเวิร์กที่ใช้ในการโฮสต์แอปพลิเคชันที่เกี่ยวข้องกับกลุ่ม ในระดับเซิร์ฟเวอร์การตั้งค่านี้ไม่ปรากฏว่ามีผลกระทบทันทีหรือชัดเจนใน. NET 4.0 หรือ 2.0 ไซต์ที่ทำงานบนเซิร์ฟเวอร์ทดสอบของฉัน แต่ฉันสงสัยว่ามันจะเป็นตัวเลือกหากไม่ได้ทำอะไรเลย เป็นที่ตั้งในส่วนการปรับใช้ของบานหน้าต่างการดำเนินการทำให้ฉันสงสัยว่ามันจะส่งผลกระทบต่อแพคเกจการนำเข้า / ส่งออกที่อยู่ที่นั่นเช่นกัน ฉันจะทดสอบสิ่งนี้

ฉันพบเธรดที่เกี่ยวข้องใน iis.net ซึ่งดูเหมือนว่าจะระบุการตั้งค่านี้จะมีผลกับส่วนของไฟล์การกำหนดค่าที่สนับสนุนโดยค่าเริ่มต้นโดยไม่ต้องเพิ่มที่ด้านบนของไฟล์

ฉันไม่ได้พบอะไรมากในการค้นหาเว็บดูเหมือนว่าเป็นการตั้งค่าที่ค่อนข้างคลุมเครือ

แก้ไข: คำตอบจาก squillman ดีกว่า


1
ฉันจะตอบด้วยวิธีเดียวกัน แต่จากนั้นฉันอ่านคำถามอีกครั้ง: เขากำลังพูดถึงการตั้งค่าระดับบนสุดใน IIS ไม่ใช่เกี่ยวกับแอปพลิเคชันเฉพาะ และการตั้งค่าที่ไม่ทำให้รู้สึกถึงฉันทั้งเป็นมีไม่ใด ๆ "ทั่วโลก" รุ่น .NET ใน IIS นี้เป็นสระว่ายน้ำแอพลิเคชัน - การตั้งค่าที่เฉพาะเจาะจง
Massimo

ใช่คุณถูกต้องขอบคุณสำหรับความคิดเห็น ฉันจะต้องแก้ไขคำตอบของฉัน
jbuch

2
นอกจากนี้โปรดทราบว่า. NET 4.5 เป็นส่วนเสริม 4.0 ไม่แนะนำรันไทม์ใหม่
Richard

ตามที่ปรากฎคำตอบเดิมของฉันเกี่ยวข้องกับกลุ่มแอพลิเคชันและเป็นที่ชัดเจนแล้วว่าคุณกำลังอ้างถึงตัวเลือก "เปลี่ยน. NET Framework รุ่น" ภายใต้บานหน้าต่าง "การกระทำ" เมื่อคุณคลิกที่โหนดเซิร์ฟเวอร์ในตัวจัดการ IIS เครื่องมือ. ดังนั้นโดยทั่วไปฉันไม่ได้รับความช่วยเหลือถ้าฉันไม่สามารถหาคำตอบที่ดีกว่าได้ในไม่กี่นาทีฉันจะลบคำตอบของฉัน
jbuch
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.