Perbedaan antara aplikasi dan direktori virtual


11

Saya adalah pengembang asp.net, saya selalu bingung antara aplikasi dan direktori virtual di IIS. Tampaknya di iis 6.0, Anda hanya dapat membuat direktori virtual.


1
Di IIS6 Anda membuat direktori virtual dan kemudian mengubahnya ke aplikasi.
Mark Henderson

Jawaban:


13

Keduanya mudah bingung dan orang sering menggunakan istilah itu secara bergantian.

Direktori virtual hanyalah penunjuk ke lokasi yang berbeda pada disk. Itu menunjuk ke jalur tetap pada disk yang berbeda dari folder induknya.

Aplikasi adalah batas antara folder yang berbeda. ASP.NET menggunakannya untuk membuat root AppDomain baru (atau root aplikasi). Root aplikasi menggunakan global.asax, folder bin yang berbeda dan folder app_ [lainnya].

Di IIS6 dan IIS7 jika Anda membuat direktori virtual, itu juga bukan aplikasi secara default. ASP.NET akan meletakkannya di AppDomain yang sama dengan folder induknya.

Di IIS6 Anda dapat mengubah direktori virtual atau folder biasa menjadi aplikasi dengan mengklik kanan -> properti dan Buat.

Di IIS7 opsi diberi nama berbeda tetapi sama di latar belakang. Membuat direktori virtual memungkinkan Anda membuat vdir yang masih merupakan bagian dari AppDomain induknya, bukan aplikasi).

Opsi "Tambah Aplikasi" sebenarnya membuat direktori virtual DAN kemudian menandainya sebagai aplikasi. (Anda akan melihat bahwa ini memungkinkan Anda menentukan jalur).

Anda juga dapat mengklik kanan pada folder yang ada (atau vdir) dan Konversi ke Aplikasi. Itu cara untuk membuat batas aplikasi pada folder biasa atau virtual yang ada.


Situs Web standar pada IIS 7 saya menjalankan MOSS 2007 (SharePoint). Karena saya ingin pengguna merasa seperti mereka masih di portal, saya membuat aplikasi web ASP.NET yang sama bermerek dan mengaturnya sebagai aplikasi berbasis direktori virtual di bawah situs yang sama. Situs Web Default dan aplikasi ASP.NET ini menggunakan kumpulan aplikasi yang sama. Pertama-tama, apakah ini praktik yang aman / baik? Kedua, jika saya mengaktifkan dan menggunakan sesi dalam aplikasi ASP.NET, apakah dengan cara apa pun akan merusak integritas / kinerja sesi yang dikelola SharePoint, mempengaruhi SharePoint dengan cara lain?
Pengguna Web

@WebUser Tidak masalah untuk memilikinya di kumpulan aplikasi yang sama, dan karena mereka adalah aplikasi yang terpisah di kumpulan aplikasi, status sesi akan terpisah dan terisolasi satu sama lain. Namun, saya sarankan tetap menggunakan kumpulan aplikasi terpisah. Jika ada sesuatu yang gagal dalam satu, Anda tidak harus mengambil keduanya untuk mendaur ulang atau memperbaiki yang lain. Dan Anda akan memiliki lebih banyak fleksibilitas untuk mengunci izin NTFS untuk mengisolasi mereka satu sama lain.
Scott Forsyth - MVP

@ ScottForsyth-MVP Saya mengindahkan saran Anda karena saya ingin mereka benar-benar terisolasi. Saya membuat kumpulan aplikasi baru dan akun layanan baru, dan menggunakan artikel ini untuk mengatur identitas. Saya tidak tahu mengapa tetapi aplikasi melempar System.UnauthorizedAccessExceptionsetelah beberapa saat untuk menampilkan halaman; aplikasi ini masih berfungsi tetapi lambat dan menghasilkan pengecualian yang mendorong saya untuk membuka Visual Studio. Adakah pemikiran tentang apa yang saya lewatkan?
Pengguna Web

@ ScottForsyth-MVP dapatkah Anda melihat pertanyaan yang saya posting di ServerFault? Terima kasih!
Pengguna Web

@ Web Pengguna. Mungkin identitas khusus Anda perlu ditambahkan ke grup IIS_WPG. Itu persyaratan di IIS6. Saya membalas posting Anda yang lain juga.
Scott Forsyth - MVP

2

Anda juga dapat memeriksa .. Tahukah Anda: Perbedaan antara Virtual Directory & Aplikasi di IIS 7 / 7.5

Diedit: Mengutip situs, karena tautannya mati;

Di IIS 7 / 7.5, Anda memiliki opsi untuk membuat Direktori dan Aplikasi Virtual.

Apa itu Direktori Virtual?

Direktori Virtual adalah direktori yang dipetakan ke direktori fisik lokal atau direktori pada server jarak jauh. Direktori Virtual akan menjalankan kode dalam proses pekerja yang sama dengan proses induk. Kumpulan aplikasi Situs Web dan Direktori Virtual adalah sama.

Gambar05

Apa itu Aplikasi?

Aplikasi identik dengan Direktori Virtual kecuali Anda memiliki opsi untuk menjalankan Aplikasi di kumpulan aplikasi yang berbeda.

Gambar06

CATATAN: beginilah tampilan screenshot di atas di applicationhost.config


0

Direktori virtual tidak lain adalah, hanya menunjuk atau merujuk ke folder Anda di komputer lokal atau server jauh. Jika Anda membuat direktori virtual di bawah Situs Web Default di IIS. Misalkan jika situs web standar macet karena beberapa masalah internal Anda tidak dapat mengakses direktori virtual Anda.

Tambah aplikasi tidak lain adalah sekelompok file yang memberikan konten atau menyediakan layanan melalui protokol. Aplikasi milik kumpulan aplikasi; misalkan karena beberapa masalah situs web standar menjadi crash itu tidak akan mempengaruhi aplikasi apa pun yang termasuk kumpulan aplikasi.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.