Thư mục ảo hoặc Thư mục ảo chỉ là liên kết đến thư mục vật lý ở đâu đó trên máy chủ. Thư mục này trở thành một phần của cấu trúc trang web và bạn có thể sử dụng thư mục ảo trong phần đường dẫn của URL. Mã thực hiện trong Thư mục ảo sẽ thực hiện trong cùng một "Ứng dụng" như là cha mẹ của nó.
Ứng dụng là nơi mã chạy bên trong "thư mục" đó có trạng thái Phiên và trạng thái Ứng dụng riêng. Nó có hiệu lực là một ứng dụng độc lập mới sống bên dưới ứng dụng gốc. Ví dụ, nếu bạn triển khai một ứng dụng ASP.NET vào một trang web có thư mục Ứng dụng được gọi là /myapp
thì ứng dụng đó sẽ có miền ứng dụng riêng, trạng thái phiên, trạng thái ứng dụng hoàn toàn riêng biệt với một ứng dụng ASP.NET khác. chạy trong /
. Ví dụ: nếu bạn đặt Giá trị ứng dụng Application["Thing"] = 123
trong ứng dụng gốc và sau đó thực hiện tương tự nhưng với giá trị khác trong /myapp
thì Application["Thing"]
trong thư mục gốc sẽ không bị ghi đè bởi nhiệm vụ trong /myapp
.
Một việc khác bạn có thể làm với Ứng dụng là chỉ định một Hồ bơi ứng dụng khác để chạy dưới. Ví dụ: ứng dụng gốc /
của bạn có thể chứa ứng dụng ASP.NET 2.0 và chạy trong một hồ bơi được định cấu hình cho .NET 2.0. Tuy nhiên bạn có thể muốn chạy một ứng dụng blog hoặc diễn đàn được viết bằng ASP.NET 4.0. Bây giờ vì bạn không thể trộn các phiên bản chạy ASP.NET trong cùng một nhóm ứng dụng, bạn có thể chỉ định một nhóm ứng dụng thay thế đặc biệt cho các ứng dụng ASP.NET 4.0.
Ứng dụng cũng có thể hoạt động như Thư mục ảo và bạn có thể trỏ thư mục ứng dụng vào thư mục vật lý ở nơi khác trên máy chủ.
Nếu bạn quan tâm đến cơ chế cơ bản của Virtual Directories và ứng dụng trên IIS7 sau đó có một cái nhìn tại câu trả lời này tôi đã đăng một khi trở lại:
Using ServerManager to create Application within Application
Bản sao của http://stackoverflow.com/q/1002981/80161 –
Gần đây tôi đã đổi thành Tomcat. Tôi thấy đó là khái niệm ít hơn và mô hình triển khai rõ ràng hơn. – smwikipedia