IIS Express 的配置、使用和注意点
VS2010的SP1引入了IIS
Express支持,这是值得高兴的事情……因为自带的ASP.net Development
Server只能单站点运行、不能设置虚拟目录、多少个项目就会出现多少个等等等等巴拉巴拉,我对它恨之入骨,总之,很长一段时间内我进行开发实际上都是
用IIS的。但是用IIS有不方便的地方,就是必须开启IIS
Admin服务,而且VS必须以管理员模式运行才能正常打开项目和调试。每次都以管理员模式启动已经比较麻烦了,比较郁闷的是,以管理员模式启动的vs处
于特权状态,所以程序间的文件拖放就失效了……换句话说,如果我想从资源管理器中直接拖一个文件到vs中打开,就办不到了。
所以对IIS Express一直是比较期待的。
本文包含内容
:
- 关于IIS Express的介绍
- IIS Express的配置文件中网站的配置
- 如何在VS2010中配置IIS Express
- 如何避免需要管理员身份启动IIS Express
- IIS Express比较有用的命令行参数
1.关于IIS Express的介绍
Scottgu
在 这篇文章
中介绍了伴随着ASP.net MVC 3而来的新东西,其中就包含IIS Express 7.5,介绍如下:
- 轻量,易于安装,安装包不到5M;
- 从VS中启动、调试应用程序不需要管理员身份;
- 带有完整的WEB服务器功能支持——支持SSL、URL回写以及其它IIS7.x的模块
- 和IIS7.x完全一致的web.config配置模型
- 可以和IIS、ASP.net Development Server 同时安装,没有任何冲突
- 支持XP及更高的操作系统,在所有的系统上都提供IIS7.x一致的开发功能
关于IIS Express常规的安装、使用,相关介绍的文章比较多,我就不多说了。这里说说没怎么见人提的地方。
2.关于配置文件
默认情况下IIS Express使用的配置文件位于“我的文档”中,路径如下:“我的文档\IIS
Express\Config”。其中,applicationhost.config
是核心的配置文件,它用于承载站点的定义、应用程序和应用程序池以及整个WEB服务器的配置。由于是放在我的文档中的,所以修改它不需要管理员权限,意味
着可以直接修改。在修改后,下次启动应用程序就会起效。
在applicationhost.config内容中,<system.applicationHost> 用于定义网站和应用程序池。默认情况下,其内容如下:
-
<
system.applicationHost
>
-
-
??? <
applicationPools
>
-
??????? <
add
?
name
=
"Clr4IntegratedAppPool
"?
managedRuntimeVersion
=
"v4.0
"?
managedPipelineMode
=
"Integrated
"?
CLRConfigFile
=
"%IIS_USER_HOME%\config\aspnet.config
"?
autoStart
=
"true
" />
-
??????? <
add
?
name
=
"Clr4ClassicAppPool
"?
managedRuntimeVersion
=
"v4.0
"?
managedPipelineMode
=
"Classic
"?
CLRConfigFile
=
"%IIS_USER_HOME%\config\aspnet.config
"?
autoStart
=
"true
" />
-
??????? <
add
?
name
=
"Clr2IntegratedAppPool
"?
managedR