如果我创建了多个应用程序池,然后创建了一个应用程序,但没有指定该应用程序应在哪个应用程序池中运行,那么它将使用哪个应用程序池?它是随机的吗?它总是取第一个吗?还是别的什么?
j2qf4p5b1#
如果在创建站点时未指定现有应用程序池,则该站点将创建一个与该站点同名的新应用程序池。
如果您使用IIS管理器并向网站添加应用程序,则默认情况下,该应用程序将使用您在创建网站时选择的应用程序池。
但是,如果使用appcmd.exe或PowerShell添加应用程序,则情况与使用IIS管理器不同。默认情况下,应用程序使用DefaultAppPool,而不是随机。使用appcmd.exe:
appcmd add app/site.name:test/path:/blig/physicalPath:C:\inetpub\app1 ---Create app1 appcmd list app "test/app1" ---Verify the Apppool used by app1 by default
使用PowerShell:
New-Item 'IIS:\Sites\test\app2' -physicalPath C:\inetpub\app2 -type Application
7lrncoxx2#
使用的预设应用程序集区是在applicationHost.config中定义的。sites element和site element都有一个名为applicationDefaults的子元素。它有一个名为“applicationPool”的可选属性。如果application element没有设置可选的“applicationPool”元素,它将从site.applicationDefaults中获取该元素,然后从sites.applicationDefaults中获取该元素。如果没有设置任何元素,应用程序将无法运行。
2条答案
按热度按时间j2qf4p5b1#
如果在创建站点时未指定现有应用程序池,则该站点将创建一个与该站点同名的新应用程序池。
如果您使用IIS管理器并向网站添加应用程序,则默认情况下,该应用程序将使用您在创建网站时选择的应用程序池。
但是,如果使用appcmd.exe或PowerShell添加应用程序,则情况与使用IIS管理器不同。默认情况下,应用程序使用DefaultAppPool,而不是随机。
使用appcmd.exe:
使用PowerShell:
7lrncoxx2#
使用的预设应用程序集区是在applicationHost.config中定义的。
sites element和site element都有一个名为applicationDefaults的子元素。它有一个名为“applicationPool”的可选属性。
如果application element没有设置可选的“applicationPool”元素,它将从site.applicationDefaults中获取该元素,然后从sites.applicationDefaults中获取该元素。如果没有设置任何元素,应用程序将无法运行。