IIS服务器与web.config配置优化指南

IIS服务器与web.config配置优化指南,第1张

修改IIS最大工作进程数 a 请考虑以下几点 每一个工作进程都会消耗系统资源和CPU占用率 太多的工作进程会导致系统资源和CPU利用率的急剧消耗 每一个工作进程都具有自己的状态数据 如果Web应用程序依赖于工作进程保存状态数据 那么可能不支持使用多个工作进程 成资源竞争 让多个工作进程运行同一个应用程序会造成资源竞争 b 修改ISS最大工作进程数提高该应用程序池处理请求的性能 在IIS 的Web园(Web Garden)中 指定用于某个应用程序池的工作进程的数量就可以提高该应用程序池处理请求的性能 当服务器的负载较小 不需要额外的工作进程时 IIS 在一定的时间后(默认 分钟 可配置)自动缩减实际的工作进程数量 如果负载变大 需要额外的工作进程 IIS 再次增加工作进程数量 这一切 *** 作都自动进行 不需要管理员干预 修改方法如下 修改服务器 net framework的machine config的配置 目录 C:WINDOWSMicrosoft NETFramework v CONFIGmachine config 将其中的“processModel”节点的“allowDefinition”值设置为“Everywhere” 修改服务器中的iis最大工作进程数: 方法 右击iis应用程序池 >属性 >“性能”选项卡 >web园 >最大工作进程数 注 经测试验证 服务器为 ( * )核 G内存时 设置为 性能最优 (PS: processModel 元素(ASP NET 设置架构) 元素配置用于服务器(包括服务器上的所有 ASP NET 应用程序)的处理模型 因此 processModel 设置只能放在 Machine config 文件中 而且不能被任何 Web config 文件中的设置重写 ) 取消IIS的web访问记录 a 关闭IIS访问记录可以提升web性能 IIS 默认开启对于web的IIS访问记录 当开启记录功能后 IIS会事无巨细地忠实记录所有的IIS访问记录 这些记录文件的内容是非常庞杂的 比如访问时间 客户端IP 从哪个链接访问 Cookies等 另外还包括 Method(方法) UserAgent(用户代理)等 这些记录不但占用大量的磁盘空间还大大地影响了web服务器的性能 有人做过评测 停止IIS访问记录可以提升 %到 %的web性能 方法 打开IIS管理器 定位到具体的web站点 右键点击选择“属性” 在“主目录”选项卡下取消对“记录访问”的勾选即可 Web config配置优化(生产环境) 去除无用HttpModules d 并不是所有的Modules都是必需的 去除不用的HttpModules可以提高请求速度 asp net默认的HttpModules管理请求的管线控制每一个请求 例如 SessionStateModule拦截每一个请求 分析session cookie 来加载HttpContext中的合适的session 但是并不是所有的Modules都是必需的 比如 如果你不用membership的话 就不用配置FormsAuthentication模块 如果你不用windows身份验证就不用配置WindowsAuthentication 这些模块只是包含在管线里面 为每一个请求执行一些并不是必须的代码 默认的模块定义在machine config中(在网站的web config中设置表示当前网站有效)($WINDOWS$Microsoft NETFramework$VERSION$CONFIG) 如果不需要这些管线的话 配置如下

代码如下: <Modules><! 去除不必要的节点 提高请求速度 ><remove name=OutputCache /><remove name=Session /><remove name=WindowsAuthentication /><remove name=FormsAuthentication /><remove name=PassportAuthentication /><remove name=RoleManager /><remove name=UrlAuthorization /><remove name=FileAuthorization /><remove name=AnonymousIdentification /><remove name=Profile /></Modules>

关闭页面级无用机制 Web config中的<pages>节点配置全局定义页特定设置 如配置文件范围内的页和控件的 ASP NET 指令 默认enableViewState属性为“true” 即开启视图 如果不使用这个机制就可以设置为“false” 默认autoEventWireup属性为“true” 即开启页事件 如果不使用这个机制就可以设置为“false” 默认buffer属性为“true” 即开启 HTTP 响应缓冲 默认enableViewStateMac属性为“false” 开启对页的视图状态运行计算机身份验证检查 (MAC) 以放置用户篡改 如果设置为true 将会引起性能的降低 默认validateRequest默认为true 开启验证用户输入中有跨站点脚本攻击和SQL注入式漏洞攻击 如果出现匹配情况就会发 HttpRequestValidationException 异常 将CustomError设置为非Off状态 Web config中的<customErrors>节点用于定义一些自定义错误信息的信息 此节点有Mode和defaultRedirect两个属性 其中defaultRedirect属性是一个可选属性 表示应用程序发生错误时重定向到的默认URL 如果没有指定该属性则显示一般性错误 Mode属性是一个必选属性 它有三个可能值 它们所代表的意义分别如下 Mode 说明 On 表示在本地和远程用户都会看到自定义错误信息 Off 禁用自定义错误信息 本地和远程用户都会看到详细的错误信息 RemoteOnly 表示本地用户将看到详细错误信息 而远程用户将会看到自定义错误信息 这里有必要说明一下本地用户和远程用户的概念 当我们访问asp net应用程时所使用的机器和发布asp net应用程序所使用的机器为同一台机器时成为本地用户 反之则称之为远程用户 在开发调试阶段为了便于查找错误Mode属性建议设置为Off 而在部署阶段应将Mode属性设置为On或者RemoteOnly 以避免这些详细的错误信息暴露了程序代码细节从而引来黑客的入侵 配置如下

代码如下: <customErrors mode=" On " defaultRedirect="Error "/>

禁用调试 Web config中的<pilation>节点配置 ASP NET 使用的所有编译设置 默认的debug属性为“true” 即允许调试 在开发阶段这样配置没有问题 但正式部署上线后 这样会影响支撑接口的性能 所以在程序编译完成上线之后应将其设为“false” 配置如下

代码如下: <pilation debug="false" />

连接并发配置 连接并发数限制是指对于同一个ip对同一个domain发起的最大连接数 其实在大多数微软的产品或组件中都存在这个限制 一般这个数值是 / 个 也就是说在默认情况下 对于同一个ip访问同一个domain同时最多有 个连接处于建立状态 默认是 这个值太低了 这意味着每一个IP最多只能有两个请求到你的网站 这样会造成请求拥堵 asp net中connectionManagement节点可以设置单个ip对同某个domain发起的最大连接数 配置如下

代码如下: <system net><connectionManagement><add address="*" maxconnection=" " /></connectionManagement></system net>

address代表针对哪个domain maxconnection代表最大连接数 去掉头信息中的ASP NET 版本标头 enableVersonHeader 指定 ASP NET 是否应输出版本标头 使用该属性来确定当前使用的 ASP NET 版本 对于生产环境 该属性不是必需的 可以禁用 配置示例

lishixinzhi/Article/program/net/201311/14321

1.不同的站用不同的应用程序池.方法:应用程序池-新建-应用程序池-名称可自定义,然后设置,网站-属性-主目录-应用程序池,选择刚新建的应用程序池.

2.应用程序池优化.方法:应用程序池-选择要优化的那个程序池-属性-回收工作进程(分钟)设为200的.最大虚拟内存300,最大使用的内存150.大家可以根据网站需求做出一些调整.

3.IIS网站优化:A,网站-启用日志记录,勾掉,这功能没啥用.B,文档-默认内容文档,把除了网站首页文件名名称的其它内容文档删掉,因为每次访问网站首页的时候都要查询一下这个.C,网站-主目录-读取(勾上),索引资源(勾上),写入(勾上),主目录-配置-应用程序扩展,只保留网站需要扩展名,如ASP.PHP,其它的可以全部删呢.

4.WEB 服务扩展优化.有ASP程序网站的启用Active Server Pages,有PHP程序网站的启用PHP服务,没有则禁止,其它的服务扩展如不是自己设置的可以禁止.

5.GZIP 压缩.让网页体积变小,方法:WEB服务扩展-添加一个新的WEB服务扩展-扩展名就填写(GZIP)吧,这样好记些.-要求的文件-添加 C:\WINDOWS\system32\inetsrv\gzip.dll 一般就是这个路径,-设置状态扩展为允许.然后在返回网站-属性-服务-压缩应用程序文件(勾上),压缩静态文件(勾上),临时目录自己在硬盘设定一个,要有IIS_WPG 这个用户的完全权限.编辑C:\WINDOWS\system32\inetsrv目录下的MetaBase.xml文件.编辑文件的时候要暂停IIS Admin Service服务,用文本打开MetaBase.xml 搜索 IIsCompressionScheme 主要修改HcFileExtensions和HcScriptFileExtensions 后边的参数.

HcDoDynamicCompression="TRUE"

HcDoOnDemandCompression="TRUE"

HcDoStaticCompression="TRUE"

HcDynamicCompressionLevel="9"

HcFileExtensions="css

html

js

xml"

HcOnDemandCompLevel="9"

HcPriority="1"

HcScriptFileExtensions="asp

php"

注意啊.要修改相同的两处.

修改完成后,保存.然后重启IIS服务,或者重启器,就能看到效果呢.

在Windows7下如何安装IIS7,以及IIS7在安装过程中的一些需要注意的设置,以及在IIS7下配置ASP的正确方法。在Windows7下面IIS7的安装方法: 一、进入Windows7的控制面板,选择左侧的打开或关闭Windows功能。

二、现在出现了安装Windows功能的选项菜单,注意选择的项目,我们需要手动选择需要的功能,下面这张图片把需要安装的服务都已经选择了,大家可以按照图片勾选功能。

三、安装完成后,再次进入控制面板,选择管理工具,双击Internet(IIS)管理器选项,进入IIS设置。

四、现在进入到IIS7控制面板。

五、选择DefaultWebSite,并双击ASP的选项,

六、IIS7中ASP父路径是没有启用的,要开启父路径,选择True,搞定父路径选项。

七、配置IIS7的站点。单击右边的高级设置选项,可以设置网站的目录。

八、点击右侧的绑定...,设置网站的端口。

九、点击默认文档,设置网站的默认文档。

至此,Windows7的IIS7设置已经基本完成了,ASP Access程序可以调试成功

在Windows7下如何安装IIS7,以及IIS7在安装过程中的一些需要注意的设置,以及在IIS7下配置ASP的正确方法。在Windows7下面IIS7的安装方法:

一、进入Windows7的控制面板,选择左侧的打开或关闭Windows功能。

二、现在出现了安装Windows功能的选项菜单,注意选择的项目,我们需要手动选择需要的功能,下面这张图片把需要安装的服务都已经选择了,大家可以按照图片勾选功能。

三、安装完成后,再次进入控制面板,选择管理工具,双击Internet(IIS)管理器选项,进入IIS设置。

四、现在进入到IIS7控制面板。

五、选择DefaultWebSite,并双击ASP的选项,

六、IIS7中ASP父路径是没有启用的,要开启父路径,选择True,搞定父路径选项。

七、配置IIS7的站点。单击右边的高级设置选项,可以设置网站的目录。

八、点击右侧的绑定...,设置网站的端口。

九、点击默认文档,设置网站的默认文档。

至此,Windows7的IIS7设置已经基本完成了,ASP Access程序可以调试成功


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11184419.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存