应用程序和虚拟目录的区别

Ybb*_*est 16 iis-7

我是asp.net开发人员,我总是在IIS中的应用程序和虚拟目录之间混淆。似乎在iis 6.0中,您只能创建虚拟目录。

Sco*_*MVP 16

这两者很容易混淆,人们经常互换使用这两个术语。

虚拟目录只是指向磁盘上不同位置的指针。它指向磁盘上与其父文件夹不同的固定路径。

应用程序是不同文件夹之间的边界。ASP.NET 使用它来创建新的 AppDomain 根(或应用程序根)。应用程序根使用不同的 global.asax、bin 文件夹和其他 app_[folders.]。

在 IIS6 和 IIS7 中,如果创建虚拟目录,默认情况下它也不是应用程序。ASP.NET 会将它放在与其父文件夹相同的 AppDomain 中。

在 IIS6 中,您可以通过右键单击 -> 属性和创建将虚拟目录或常规文件夹转换为应用程序。

在 IIS7 中,选项的名称不同,但在后台是相同的。创建虚拟目录允许您创建一个仍然是其父级 AppDomain 的一部分的 vdir,即不是应用程序)。

“添加应用程序”选项实际上创建了一个虚拟目录,然后将其标记为应用程序。(您会注意到它允许您指定路径)。

您还可以右键单击现有文件夹(或 vdir)并转换为应用程序。这是一种在现有常规或虚拟文件夹上创建应用程序边界的方法。


Viv*_*har 5

您还可以检查..您知道吗:IIS 7 / 7.5 中虚拟目录与应用程序之间的差异

编辑:引用该网站,因为链接已失效;

在 IIS 7 / 7.5 中,您可以选择创建虚拟目录和应用程序。

什么是虚拟目录?

虚拟目录是映射到本地物理目录或远程服务器上的目录的目录。虚拟目录将在与父进程相同的工作进程中执行其代码。网站和虚拟目录的应用程序池是相同的。

图片05

什么是应用程序?

应用程序与虚拟目录相同,只是您可以选择在不同的应用程序池中运行应用程序。

图片06

注意:这就是上面的屏幕截图在 applicationhost.config 中的样子