首页 > 代码库 > IIS虚拟主机和优化

IIS虚拟主机和优化

一、iis简介

iis是Internet Information Services的缩写,意为互联网信息服务,是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。最初是Windows NT版本的可选包,随后内置在Windows 2000、Windows XP Professional和Windows Server 2003一起发行,但在Windows XP Home版本上并没有IIS。IIS是一种Web(网页)服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。

二、iis建立虚拟主机

iis建立虚拟主机的方式有三种。第一种是基于ip、第二种是基于端口、第三种是基于域名。

第一种基于ip(网站名称及虚拟主机名,物理路径及源代码所在路径,端口虚拟主机所使用的端口),这里有两个ip选择其中一个就可以建成一个网站。

第二种基于端口,基于ip相同的情况下使用不同的端口可以建立不同的虚拟主机。(如80、81等端口)

第三种基于域名,基于ip和端口相同的情况下使用不同的域名可以建立不同的虚拟主机。(如www.contoso.com、marketing.contoso.com等域名)

技术分享

 

三、应用程序池几个重要参数介绍

队列长度:单次能够进入排队的并发请求数。如应用程序池默认的队列长度值为1000,假设有10000个并发请求过来,那么其中9000个直接返回“HTTP Error 503. The service is unavailable.”

启用32位应用程序:默认值为false,要修改为True。否则会导致一些32位的组建或32位的php出现错误。

托管管道模式:经典模式(Classic)和集成模式(Integrated),一般选用集成模式(Integrated)。

闲置超时(分钟):默认为20分钟,可以适当的增长。

快速故障防护:默认为开启。在网站出现503程序池停止时可以选择性关闭。

 

四、应用程序池出现自动停止解决方案

1、快速故障防护设置为false。如下图。

技术分享

2、控制面板-->管理工具-->组件服务-->计算机-->我的电脑-->DCOM配置-->IIS Admin Service右键属性-->安全-->对启动和激活权限编辑

添加NETWORK SERVICE用户并给予本地连接和本地激活权限。如下图

技术分享

3、如若编辑显示为灰色,无法进行编辑。那么进入注册表修改HKEY_CLASSES_ROOT\AppID\{A9E69610-B80D-11D0-B9B9-00A0C922E750}右键权限点击更改所有者为administrators访问权限为完全控制。

技术分享

 

五、iis支持10万个请求

1、修改队列长度由默认的1000修改为最大的65535。当然你也可以根据访问用户·1.5倍的原则来设置。

2、修改appConcurrentRequestLimit将默认值5000修改为100000,默认值在配置文件中看不到。

在cmd环境下执行:c:\windows\system32\inetsrv\appcmd.exe set config /section:serverRuntime /appConcurrentRequestLimit:100000。执行后可在下图文件中查看。

技术分享

3、修改machine.config中processModel>requestQueueLimit的设置。有默认5000修改为100000.见下图

技术分享

4、修改注册表。调整iis支持的同时TCP/IP连接数默认值5000为100000。

在cmd中执行:reg add HKLM\System\CurrentControlSet\Services\HTTP\Parameters /v MaxConnections /t REG_DWORD /d 100000 见下图

技术分享

 

IIS虚拟主机和优化