|
转:http://blog.csdn.net/jh_zzz/article/details/5821241
最近在做一些Web方面调研的时候我基本上都不用 IIS了,IIS Express 实在是很方便,由于目前还是BETA版本,有些功能界面上还看不见,网上资料也很少,所以我把我之前的一点经验写出来。
<wbr></wbr>
关注 IIS Express 的最初原因是希望将我们的一个产品部署到 Windows XP Professional上,要知道2003 Server的价格和 Pro差距还是很大的,对于大批量部署的产品来说,这对产品利润影响相当大。由于我们在开发时使用了MVC,这个在 XP Pro自带的 IIS5.1上部署,一方面程序要做相应的处理,还需要部署 URLRewriter之类的东西,相当麻烦,解决了服务器费用,只怕又会带来开发人员出差的费用。
<wbr></wbr>
有了 IIS Express,问题基本可全部解决,主要关注的是下面的几个问题:
<wbr></wbr>
1. 允许远程访问
2. 要可以支持创建虚拟目录
3. 可以支持运行多个 Web Application
4. 我们的产品是在学校的局域网部署,性能上应满足至少几十人并发要求
<wbr></wbr>
1. 安装部署
<wbr><wbr><wbr>下载地址:<a href="http://www.microsoft.com/web/webmatrix/">http://www.microsoft.com/web/webmatrix/</a><wbr>,IIS Express 是随 Web Matrix 一起发布的,安装Microsoft Web Platform Installer后,就可以选择安装 IIS Express(英文版中有 IIS Express可以选择,中文版中直接选 WebMatrix)。</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>介绍可参考Scott博客:<a href="http://weblogs.asp.net/scottgu/archive/2010/06/28/introducing-iis-express.aspx">http://weblogs.asp.net/scottgu/archive/2010/06/28/introducing-iis-express.aspx</a></wbr></wbr></wbr>
<wbr><wbr><wbr> IIS Expressoverview:<a href="http://learn.iis.net/page.aspx/868/iis-developer-express-overview/">http://learn.iis.net/page.aspx/868/iis-developer-express-overview/</a></wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr> 从开始菜单运行 WebMatrix 后默认会自动启动一个Web 站点,管理界面比较简单,可以直接将某个目录创建为Web站点。</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr>实际我在使用的时候,基本都是以命令行方式运行的,一般我只用到下面几个参数:</wbr></wbr>
<wbr><wbr><wbr> iisexpress[/config:config-file] [/site:site-name] [/systray:boolean]</wbr></wbr></wbr>
<wbr><wbr><wbr>配置文件可直接基于默认的配置文件修改, 默认使用的配置文件是在[我的文档]/IISExpress8/config/applicationhost.config</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr> 我现在的用法是直接将Web Matrix所在目录打包放到光盘上,配置文件随应用程序发布,然后分别创建两个批处理文件,用以启动和停止IISExpress服务,非常方便,批处理内容大概就像这样:</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr> 启动:startF:/Projects/MicrosoftWebMatrix/iisexpress/config:F:/Projects/XXX/applicationhost.config /systray:true/site:MTLOralDemo</wbr></wbr></wbr>
<wbr><wbr><wbr> 停止:TASKKILL/F /IM iisexpress.exe /T</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr> 其他机器根本不需要再安装WebMatrix,,只要装了.Net Framework直接运行就可以了。</wbr></wbr>
<wbr></wbr>
2. 远程访问设置
<wbr><wbr><wbr> 找到配置文件中sites/site/bindings 默认是绑定到 localhost80端口,如果需要其他机器可以访问,绑定到指定IP地址就可以了。</wbr></wbr></wbr>
<wbr><wbr><wbr></wbr></wbr></wbr>
<wbr></wbr>
3. 虚拟目录设置
<wbr><wbr><wbr> 类似于下面这样:</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>我尝试过多个virtualDirectory节点,但发现Web Application不能正常工作,而且多个虚拟目录也不是使用独立的Web.config,后来通过配置application 解决。</wbr></wbr></wbr>
<wbr></wbr>
<wbr><wbr><wbr>如果站点有Spring之类的东西,运行时会出现错误,请将 applicationPool 配置成Clr2ClassicAppPool。</wbr></wbr></wbr>
<wbr></wbr>
<wbr></wbr>
4. 配置多个站点
<wbr><wbr><wbr> 多个站点只要配置多个site 节点就可以了,具体配置都差不多,但多个站点需要使用不同的端口。</wbr></wbr></wbr>
<wbr><wbr><wbr>如果需要同时运行多个站点,在批处理中再增加几条修改相应的参数就行了,相当于同时运行多个 iis express 实例。</wbr></wbr></wbr>
<wbr></wbr>
5. 性能测试结果
<wbr></wbr>
<wbr><wbr> 分别做了以下测试,测试结果性能满足要求:</wbr></wbr>
<wbr></wbr>
<wbr><wbr> 1. 写了个简单测试页面,使用Load Runner进行200路并发压力测试,进行了2小时。</wbr></wbr>
<wbr><wbr> 2. 正式产品部署,我们的产品总共运行了9个 iisexpress进程,分别侦听在8080~8089端口,我们整个部门几十个人同时模拟用户访问站点并实际使用。</wbr></wbr>
----最简单使用方法:
1.运行“C:\Program Files\IISExpress/iisexpress.exe”
<wbr>1.D:\Backup\我的文档\IISExpress\config\applicationhost.config中website1 的物理路径改为程序的目录</wbr>
<wbr>2.HTTP 错误 500.22 - Internal ServerError ,那么</wbr>
解决办法如下:在安装目录中有一个 appcmd.xml。用文本编辑器打开发现:
&amp;lt;object name="config"alias="configs" classId="DefaultConfigObject"&amp;gt;
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="list"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="set"classId="DefaultConfigObject"/&amp;amp;gt;</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="search"classId="DefaultConfigObject"/&amp;amp;gt;</wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="lock"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="unlock"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="clear"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="reset"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
&amp;lt;!--
<wbr><wbr><wbr><wbr> &amp;amp;lt;verb name="migrate"classId="DefaultConfigObject"<wbr>/&amp;amp;gt;</wbr></wbr></wbr></wbr></wbr>
--&amp;gt;
<wbr><wbr>&amp;amp;lt;/object&amp;amp;gt;</wbr></wbr>
-E:\work\2007-1-30After\Source\aspnet微型服务器.rar<wbr>也可以做到不用安装iis 就能启动.net</wbr>
<wbr>作者的博客http://www.cnblogs.com/waw/archive/2011/10/24/2222398.html</wbr> |
|
|
|
|
|
|