如何手动启动IIS Express

76

有没有一个命令行程序或服务可以手动启动IIS Express?

5个回答

59

36
请不要仅仅粘贴链接,a)它很容易失效,b)这就像一个 RTFM 回答,而且手册通常没有像 SO 上好的回答那么清晰易懂。 - Luke Puplett

44

当你安装了IIS Express(最简单的方式是通过Microsoft Web Platform Installer),你会在%PROGRAMFILES%\IIS Express(在x64架构上为%PROGRAMFILES(x86)%\IIS Express)找到可执行文件,它被称为iisexpress.exe

要查看所有可能的命令行选项,只需运行:

iisexpress /?

执行时如果没有参数,将启动在配置文件中定义且被标记为在启动时运行的所有站点。系统托盘中的图标将显示哪些站点正在运行。

一旦在配置文件中创建了一些站点(可以在%USERPROFILE%\Documents\IISExpress\config\applicationhost.config找到),就有几个有用的选项: /site/siteId

使用第一个选项,您可以通过名称启动特定的站点:

并且程序详细的帮助信息将会弹出。

iisexpress /site:SiteName

使用后者,您可以通过指定ID来启动:

iisexpress /siteId:SiteId

如果从命令行启动IISExpress,将显示向服务器发出的所有请求列表,这在调试时非常有用。

最后,可以通过指定完整目录路径来启动网站。IIS Express将创建一个虚拟配置文件并启动该站点(如果路径中包含空格,请记得加引号):

iisexpress /path:FullSitePath

这涵盖了从命令行使用基本的IISExpress的用法。


6

从其他人发布的链接中,我没有看到选项。-- 我只使用powershell来终止它 -- 您可以将此保存为Stop-IisExpress.ps1文件:

get-process | where { $_.ProcessName -like "IISExpress" } | stop-process

这没有任何问题 -- 当 Visual Studio 需要时,它会弹出一个新的窗口。


要在PowerShell脚本中启动和停止IIS Express作为作业,这个代码片段可能也很有用:https://gist.github.com/drmohundro/5a131d7ff6f291a33334 - Manfred
问题是“如何手动启动IIS Express?”当从命令行启动时(这个问题的答案),这是不必要的。IIS Express会显示“输入'Q'停止IIS Express”。 - undefined

4

或者您可以像完整版IIS一样使用我开发的开源项目Jexus Manager for IIS Express来管理它。

https://jexusmanager.com

Jexus Manager for IIS Express

创建一个网站,流程将自动启动。


6
你可能应该披露这是你的项目。 - Tieson T.
2
http://meta.stackoverflow.com/questions/324027/how-do-i-properly-disclose-reference-to-my-own-project-on-stack-overflow - Tieson T.

3
这不是一个程序,但你可以创建一个批处理文件并运行如下命令:

powershell "start-process 'C:\Program Files (x86)\IIS Express\iisexpress.exe' -workingdirectory 'C:\Program Files (x86)\IIS Express\' -windowstyle Hidden"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接