IIS Express安装及设置
最近在做一些Web方面调研的时候我基本上都不用 IIS了,IIS Express 实在是很方便,由于目前还是 BETA版本,有些功能界面上还看不见,网上资料也很少,所以我把我之前的一点经验写出来。
最近在做一些Web方面调研的时候我基本上都不用 IIS了,IIS Express 实在是很方便,由于目前还是 BETA版本,有些功能界面上还看不见,网上资料也很少,所以我把我之前的一点经验写出来。
关注 IIS Express 的最初原因是希望将我们的一个产品部署到 Windows XP Professional上,要知道 2003 Server的价格和 Pro差距还是很大的,对于大批量部署的产品来说,这对产品利润影响相当大。由于我们在开发时使用了 MVC,这个在 XP Pro自带的 IIS5.1上部署,一方面程序要做相应的处理,还需要部署 URL Rewriter之类的东西,相当麻烦,解决了服务器费用,只怕又会带来开发人员出差的费用。
有了 IIS Express,问题基本可全部解决,主要关注的是下面的几个问题:
1. 允许远程访问
2. 要可以支持创建虚拟目录
3. 可以支持运行多个 Web Application
4. 我们的产品是在学校的局域网部署,性能上应满足至少几十人并发要求
1. 安装部署
下载地址:http://www.microsoft.com/web/webmatrix/ , IIS Express 是随 Web Matrix 一起发布的,安装Microsoft Web Platform Installer 后,就可以选择安装 IIS Express(英文版中有 IIS Express可以选择,中文版中直接选 Web Matrix)。
介绍可参考Scott博客:http://weblogs.asp.net/scottgu/archive/2010/06/28/introducing-iis-express.aspx
IIS Express overview:http://learn.iis.net/page.aspx/868/iis-developer-express-overview/
从开始菜单运行 Web Matrix 后默认会自动启动一个Web 站点,管理界面比较简单,可以直接将某个目录创建为Web站点。
实际我在使用的时候,基本都是以命令行方式运行的,一般我只用到下面几个参数:
iisexpress [/config:config-file] [/site:site-name] [/systray:boolean]
配置文件可直接基于默认的配置文件修改, 默认使用的配置文件是在 [我的文档]\IISExpress8\config\applicationhost.config
我现在的用法是直接将 Web Matrix所在目录打包放到光盘上,配置文件随应用程序发布,然后分别创建两个批处理文件,用以启动和停止IIS Express服务,非常方便,批处理内容大概就像这样:
启动:start F:\Projects\MicrosoftWebMatrix\iisexpress /config:F:\Projects\XXX\applicationhost.config /systray:true /site:MTLOralDemo
停止:TASKKILL /F /IM iisexpress.exe /T
其他机器根本不需要再安装Web Matrix,,只要装了.Net Framework直接运行就可以了。
2. 远程访问设置
找到配置文件中 sites\site\bindings 默认是绑定到 localhost 80端口,如果需要其他机器可以访问,绑定到指定IP地址就可以了。
<binding protocol="http" bindingInformation="*:8080:192.168.79.166" />
3. 虚拟目录设置
类似于下面这样:
<site name="AppService" id="1280170558">
<application path="/" applicationPool="Clr2IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\IISExpress\DemoApp\empty" />
</application>
<application path="/AppService" applicationPool="Clr2IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\IISExpress\DemoApp\AppService" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:8088:192.168.79.166" />
</bindings>
</site>
我尝试过多个virtualDirectory节点,但发现Web Application不能正常工作,而且多个虚拟目录也不是使用独立的 Web.config,后来通过配置application 解决。
如果站点有Spring之类的东西,运行时会出现错误,请将 applicationPool 配置成 Clr2ClassicAppPool。
4. 配置多个站点
多个站点只要配置多个 site 节点就可以了,具体配置都差不多,但多个站点需要使用不同的端口。
如果需要同时运行多个站点,在批处理中再增加几条修改相应的参数就行了,相当于同时运行多个 iis express 实例。
5. 性能测试结果
分别做了以下测试,测试结果性能满足要求:
1. 写了个简单测试页面,使用Load Runner 进行200路并发压力测试,进行了2小时。
2. 正式产品部署,我们的产品总共运行了9个 iis express进程,分别侦听在8080~8089端口,我们整个部门几十个人同时模拟用户访问站点并实际使用。
关键词:IIS Express 安装 设置
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解