IIS上的站点,经常出现503 Service Unavailable,首先我们检查网站的应用程序池是否已经停止,如果已经停止,应立即将应用程序池开启,然后在应用程序池的高级设置中做如下设置:


1. 在应用程序池高级设置中,将“回收”一栏中的“禁用重叠回收”设置为True,这样在创建一个回收进程之前会退出正在运行的回收进程,如下图:

1.503错误,禁用重叠回收.jpg


2. 在“快速故障防护”一栏中的“服务器不可用响应类型”设置为TcpLevel,此处需注意:TcpLevel是在负载均衡的时候,给负载均衡器一个识别响应,页面仍然还是不会正常显示的,只是在页面上不显示503 Service Unavailable而已。如下图:

2.503错误,设置服务不可用的相应类型.jpg


3. 在网站的“输出缓存”设置中,添加缓存规则,为.html文件设置缓存,如下图:

3.503错误,输出缓存.jpg

3.503错误,输出缓存html.jpg

当然,你也是可以为.aspx文件设置缓存的,但是如果.aspx上有根据URL参数或者Cookie展示不同数据,此设置就不行了,因为设置了之后,同一个aspx页面只会有一个缓存,也就是说不论这个页面上有一些什么样的条件来获取不同数据,都会只有一份缓存,缓存之后打开页面都显示同样的数据