Apa pengaturan ".NET Framework Version" di IIS sebenarnya?

19

Ini sepertinya pertanyaan yang sudah jelas, tetapi saya mencoba menentukan apa yang tombol "Change .NET Framework Version" di panel konfigurasi IIS tingkat atas benar-benar berubah. Di semua server saya, selalu dibiarkan di v2.0. Kumpulan aplikasi saya adalah campuran dari v2.0 dan v4.0 dan semua aplikasi v4.0 saya beroperasi dengan benar.

Jadi, apa yang mengontrol nomor versi ini? Apa yang akan mengandalkan ini yang tidak akan ditugaskan ke kumpulan aplikasi? Sepertinya aneh.

Pengaturan yang dimaksud digambarkan di bawah ini:

masukkan deskripsi gambar di sini

John Hargrove
sumber

Jawaban:

13

Itu membuat IIS menunjuk ke file konfigurasi level root yang berbeda untuk .NET. File tingkat root ini berada di dalam folder instalasi kerangka di%systemroot%\Microsoft.NET\Framework\<version>\CONFIG

IIS mencari file konfigurasi untuk dirinya sendiri di dalam %systemroot%\system32\inetsrv\config\applicationHost.config
dan untuk. NET di
%systemroot%\Microsoft.NET\Framework\<version>\CONFIG\machine.config

Mengubah Versi .NET beralih yang machine.config digunakan. Misalnya, mengubahnya ke v2.050727 akan membuatnya melihatnya %systemroot%\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config. Mengubah ke v4.0.30319 akan melihatnya%systemroot%\Microsoft.NET\Framework\v4.0.30319\CONFIG\machine.config

Aplikasi mewarisi hal-hal dari pengaturan konfigurasi tingkat root.

Lihat artikel ini yang menguraikan sistem konfigurasi dan memperlihatkan hierarki konfigurasi.

squillman
sumber
3

Menurut TechNet , pengaturan ini mengontrol versi ".NET" .NET Framework.

Pada tingkat kumpulan aplikasi, pengaturan ini mengontrol kerangka kerja yang digunakan untuk meng-host aplikasi yang terkait dengan kumpulan tersebut. Pada tingkat server, pengaturan ini tampaknya tidak memiliki pengaruh langsung atau jelas pada situs .NET 4.0 atau 2.0 yang berjalan pada server pengujian saya, namun saya ragu itu akan menjadi pilihan jika tidak melakukan apa-apa. Lokasinya di bagian Deploy di panel Actions membuat saya bertanya-tanya apakah itu akan mempengaruhi paket impor / ekspor yang berada di sana juga. Saya akan menguji ini.

Saya menemukan utas terkait di iis.net yang tampaknya menunjukkan pengaturan ini akan memengaruhi bagian file konfigurasi yang didukung secara default tanpa menambahkan ke bagian atas file.

Saya belum menemukan banyak hal lain mencari web, tampaknya pengaturan yang cukup jelas.

Sunting: Jawaban dari squillman lebih baik.

Ya Tuhan
sumber
1
Saya akan menjawab dengan cara yang persis sama, tetapi kemudian saya membaca kembali pertanyaannya: dia berbicara tentang pengaturan tingkat atas di IIS, bukan tentang kumpulan aplikasi tertentu. Dan pengaturan itu tidak masuk akal bagi saya juga, karena tidak ada versi "global" .NET di IIS, ini adalah pengaturan khusus kumpulan aplikasi.
Massimo
Ya Anda benar, terima kasih atas komentarnya. Saya harus mengedit jawaban saya.
jbuch
2
Juga perhatikan .NET 4.5 adalah ekstensi ke 4.0, itu tidak memperkenalkan runtime baru.
Richard
Ternyata, jawaban asli saya berkaitan dengan Aplikasi Pools, dan sekarang jelas bahwa Anda merujuk ke opsi "Ubah Versi .NET Framework" di bawah panel "Actions" ketika Anda mengklik pada node server di IIS Manager alat. Jadi pada dasarnya saya tidak membantu, jika saya tidak dapat menemukan jawaban yang lebih baik dalam beberapa menit saya akan menghapus jawaban saya.
jbuch