我是asp.net开发人员,我总是在IIS中的应用程序和虚拟目录之间感到困惑。似乎在iis 6.0中,你只能创build虚拟目录。
这两个很容易混淆,人们经常交替使用这些术语。
虚拟目录只是指向磁盘上不同位置的指针。 它指向磁盘上与其父文件夹不同的固定path。
应用程序是不同文件夹之间的边界。 ASP.NET使用它来创build一个新的AppDomain根(或应用程序根目录)。 应用程序根目录使用不同的global.asax,bin文件夹和其他app_ [文件夹]。
在IIS6和IIS7中,如果您创build虚拟目录,则默认情况下它也不是一个应用程序。 ASP.NET将把它放在与其父文件夹相同的AppDomain中。
在IIS6中,您可以通过右键单击 – >属性和创build,将虚拟目录或常规文件夹转换为应用程序。
在IIS7中,这些选项被命名为不同的,但在后台是一样的。 创build一个虚拟目录允许你创build一个vdir,它仍然是其父应用程序域的一部分,即不是应用程序)。
“添加应用程序”选项实际上创build一个虚拟目录AND然后将其标记为应用程序。 (你会注意到它允许你指定一个path)。
您也可以右键单击现有文件夹(或vdir)并转换为应用程序。 这是在现有的常规或虚拟文件夹上创build应用程序边界的一种方法。
你也可以检查.. 你知道吗:IIS 7 / 7.5虚拟目录和应用程序之间的区别
虚拟目录只是指向或引用您的本地计算机或远程服务器中的文件夹。 如果您在IIS中的默认Web站点下创build虚拟目录。 假设如果默认网站由于某些内部问题而崩溃,则无法访问您的虚拟目录。
添加应用程序只不过是一组通过协议提供内容或提供服务的文件。 应用程序属于应用程序池; 假设由于某些问题,默认的网站崩溃了,不会影响任何属于应用程序池的应用程序。