当appPool配置为使用specifyIdentity时,“Visual Studio无法启动IIS Express Web服务器”

时间:2011-08-12 12:59:47

标签: visual-studio-2010 iis-express

我一直在使用IIS express作为我的网络服务器,但是我遇到了一个需要应用程序池作为特定用户而不是NetworkService或其他帐户运行的场景。

使用以下命令,我创建了一个应用程序池并配置了站点以使用它。现在,我无法通过Visual Studio启动IIS Express。当我尝试时,我得到“Visual Studio无法启动IIS Express Web服务器”消息。如果我使用命令行启动IIS Express,一切似乎都有效。如果我将应用程序池更改回使用服务帐户,或者甚至只是将站点更改为使用其他应用程序池,那么一切正常。有什么想法吗?

用于创建应用池的命令

appcmd add apppool /name:MyPool /managedRuntimeVersion:v4.0 /managedPipelineMode:Integrated
appcmd set config /section:applicationPools /[name='MyPool'].processModel.identityType:SpecificUser /[name='MyPool'].processModel.userName:'MyUser' /[name='MyPool'].processModel.password:MyPass
appcmd set app /app.name:MySiteName/ /applicationPool:MyPool
用于手动启动iisexpress.exe的

命令

iisexpress /config:c:\users\me\documents\iisexpress\config\applicationHost.config /trace:error

我已尝试重新安装IIS Express和Visual Studio 2010 SP1。没有区别。

2 个答案:

答案 0 :(得分:6)

只是一个想法:由于问题可能与安全相关,我建议尝试以提升模式运行Visual Studio(以管理员身份运行)。或者如果可以的话,使用IIS而不是Express。

答案 1 :(得分:0)

您是否看过how to run iisexpress app pool under a different identity

默认情况下,iisexpress.exe作为当前登录用户运行。如果上面给出的链接不起作用,可能你应该启动visual studio作为所需的用户(使用'runas'命令)然后自动iisexpress.exe将运行VS正在运行的任何身份。