• 简书网微信公众号二维码
您当前的位置: 首页 > 网站建设 > 站点部署 IIS配置优化指南

站点部署 IIS配置优化指南

时间:2023-07-01 14:05 阅读数:82 人阅读 分类:网站建设

  启用信息内容过期(客户使用者端缓存)

  对于静态文件启用信息内容过期可以提升提高浏览访问*能。

  1、首先网站站点的目录要划分合理,image图片、CSS、Java均放在单独目录下

  2、然后在IIS中选择要缓存的目录 > HTTP 响应标头 > 配置设置常用标头 > 配置设置"web信息内容过期"策略

  如上图webDemo网站站点,这样,用户访问浏览器将比较当前日期和截止日期,以便决定是显示缓存页还是从we服务器请求调整更新的页,由于image图片、CSS、JS通常变化较少,因此基本上都从本地缓存读取,从而加快显示相应速度。

  参考:IIS7禁用单个静态文件的客户使用者端缓存

  we服务器验证缓存

  IIS自动机制,会在浏览访问css、js等静态文件时,返回给查看浏览器Last-Modified和Etag标记

  参考:

  查看浏览器缓存之Last-Modified

  服务端的缓存验证 Last-Modified和Etag

  启用Gzip压缩

  IIS 压缩功能使用Gzip算法规则

  gzip是HTTP的一种压缩算法规则,HTTP压缩是在Webwe服务器和查看浏览器间传输压缩文本信息信息内容的方式方法。HTTP压缩采用通用的压缩算法规则如gzip等压缩HTML、Java或 CSS文件。压缩的最大好处就是降低了互联网网络传输的数值数据量,从而提升提高客户使用者端查看浏览器的访问相应速度。当然,同时也会提升增加一点点we服务器的负担。Gzip是比较常见的一种HTTP压缩算法规则。

  五、IIS初始化(预加载),解决(被回收后)第一次浏览访问慢

  参考:

  配置设置之后,什么时候会自动初始化?

  (例如初始化执行 Global.Application_Start 初始化函数)

  1)会 - 应用程序池启动、应用程序池回收、cmd->iisreset (w3wp的PID会变)

  2)不会 - 网站站点重启(IIS网站站点右键 > 管理网站站点 > 重新启动)、网站站点启动

  3)不会 - web.config更改引起的应用程序池回收

  在IIS10版本上测试是上面行为。另外有人IIS8.5上使用也是同样的行为,参考信息文章。

  步骤一、安装IIS应用程序初始化功能

  步骤二、配置设置IIS上应用程序池启动模式

  常规 > 启动模式

  默认值:OnDemand(按需运行模式),另外值AlwaysRuning(始终运行模式)

  优化提升配置设置:改为 AlwaysRunning(始终运行)

  步骤三、配置设置网站站点预加载

  在IIS上网站站点右键 > 管理网站站点 > 高级配置设置,把【预加载已启用】配置设置为true。

  步骤四、配置网站站点 web.config ,增加添加网站站点重启后预加载请求的网站页面

  地址:

  processModel 元素(ASP.NET 配置设置架构)

  Improving ASP.NET Performance (微软文档中给出了推荐值,如下图)

  七、安全*

  为不同工作进程指定应用程序池(工作进程隔离模式)

  一台we服务器上有非常多的Web网站站点。如何才能做到各个网站站点之间相互独立,不因某些Web网站站点出现故障而影响其他网站站点呢?--为不同工作进程指定应用程序池是个很好的解决办法。

  进程模型 > 标识,使用ApplicationPoolIdentity虚拟账户

  ApplicationPoolIdentity – 默认情况下,选择“应用程序池标识”帐户。启动应用程序池时动态创建“应用程序池标识”帐户,因此,此帐户对于您的应用程序来说是最安全的。(这样,每个应用程序池都有各自的账户,就避免了木马上传到其中一个池下网站站点,会对另一个池的文件夹有操作权限)

  参考:IIS7.5中神秘的ApplicationPoolIdentity

  启用快速失败保护

  如果Web应用程序代码编写有问题,它可能会导致工作进程持续出现问题。默认情况下应用程序池配置为启用快速失败保护,当工作进程在配置的时间段(默认为5分钟)内发生的失败次数超过了配置的值(默认为5次),则禁用此应用程序池。