当前位置: 操作系统/服务器>linux
本页文章导读:
▪IIS6上配置404页面的图文教程(url+文件)
首先先说明下消息类型: url 与 文件。一般情况下如果选择了url那么返回的404页面是200状态(也就是返回给搜索引擎是正常存在的页面),而选择了文件那么才是告诉搜索页引擎没有找到页.........
▪Service Temporarily Unavailable的503错误是怎么回事?
一般来说,出现Service Temporarily Unavailable错误多半是因为网站访问量大,造成了流量超限或者并发数大引起的资源超限出现的错误。解决的方法一个是升级空间到更佳配置,要么就是检查网.........
▪HTTPERR的日志中出现大量Timer_MinBytesPerSecond,Timer_ConnectionIdle错误
在\LogFiles\HTTPERR的日志中发现了大量Timer_MinBytesPerSecond,Timer_ConnectionIdle错误, 根据网上的介绍,做了如下更改: 1) 从 IIS 管理器右键单击 本地计算机 选择 属性。勾选允许直接编辑配置数.........
[1]IIS6上配置404页面的图文教程(url+文件)
来源: 互联网 发布时间: 2013-12-24
首先先说明下消息类型: url 与 文件。
一般情况下如果选择了url那么返回的404页面是200状态(也就是返回给搜索引擎是正常存在的页面),而选择了文件那么才是告诉搜索页引擎没有找到页面,返回的是400页面内容,这样对搜索引擎来税具有较好的友好度,其实我们现在大多数都是使用文件格式。
推荐使用 文件啊
步骤/方法
打开IIS
找到你的网站,点右键,选择属性
选择“自定义错误”标签页,找到404的那一项,点“编辑属性”按钮
在“消息类型”里选“URL”,然后在下面的“URL”输入框里,填上你的404错误文件的路径。
在“消息类型”里如果是选“文件”,就在下面的“文件”输入框里,填上你网站的404页面所在硬盘的路径
然后一路“确定”就行了。
[2]Service Temporarily Unavailable的503错误是怎么回事?
来源: 互联网 发布时间: 2013-12-24
一般来说,出现Service Temporarily Unavailable错误多半是因为网站访问量大,造成了流量超限或者并发数大引起的资源超限出现的错误。解决的方法一个是升级空间到更佳配置,要么就是检查网站系统程序,使之更佳优化。
错误展示:
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
解决方法:
1、如果你自认为自己的网站程序没有问题,那么就应该是空间有过多的限制造成了系统资源不足引起的错误,可以考虑换空间了。
2、如果空间没有问题,那么就要仔细检查网站程序是否有死循环或者内存泄露等问题。
3、让Service Temporarily Unavailable自动重定义到503页面
如果出现了Service Temporarily Unavailable问题,却不想直接显示错误页面,那么可以指定这个错误页面。Apache下可以使用如下方法:
编辑
/usr/prima/apache_ssl/conf/httpd.conf
找到<IfModule mod_throttle.c>,在块中加入
ThrottleMaxDelay 0
重起apache
在httpd.conf中加入:
ErrorDocument 503 /busy.html
这样一旦再出现Service Temporarily Unavailable错误,就会直接指向到busy.html页面了!
补充1
其实一般是因为web服务器负载过大造成,检验增加带宽或使用cdn加速等临时解决下,一般iis或apache的连接数要根据自己的访问量增加,一般5000-10000就差不多了
补充2
问题
Service Temporarily Unavailable
解决方案
1 这是因为用户站点使用的带宽超过了设定的最高限额引起的。
为了不显示这个错误信息,可以在apache(Unix平台最流行的WEB服务器平台)的配置中加上一个配置,当超出带宽时,让访问变慢,而不是立即显示错误信息。
编辑/usr/Prima(最完善的虚拟主机管理系统)/apache(Unix平台最流行的WEB服务器平台)_ssl/conf/httpd.conf,找到<IfModule mod_throttle.c>,在块中加入
ThrottleMaxDelay 0
重起apache(Unix平台最流行的WEB服务器平台):
/etc/init.d/httpd restart
还可以编辑一个显示服务器忙的html文件,放到/www/icons/busy.html,在httpd.conf中加入:
ErrorDocument 503 /icons/busy.html
2 有可能是resin(一个免费的JSP运行平台) 服务有问题 在resin(一个免费的JSP运行平台)2中有提示 /etc/init.d/stop 停止 /etc/init.d/resin(一个免费的JSP运行平台) start
重起resin(一个免费的JSP运行平台) 服务器后有可能解决这个问题
错误展示:
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
解决方法:
1、如果你自认为自己的网站程序没有问题,那么就应该是空间有过多的限制造成了系统资源不足引起的错误,可以考虑换空间了。
2、如果空间没有问题,那么就要仔细检查网站程序是否有死循环或者内存泄露等问题。
3、让Service Temporarily Unavailable自动重定义到503页面
如果出现了Service Temporarily Unavailable问题,却不想直接显示错误页面,那么可以指定这个错误页面。Apache下可以使用如下方法:
编辑
/usr/prima/apache_ssl/conf/httpd.conf
找到<IfModule mod_throttle.c>,在块中加入
ThrottleMaxDelay 0
重起apache
在httpd.conf中加入:
ErrorDocument 503 /busy.html
这样一旦再出现Service Temporarily Unavailable错误,就会直接指向到busy.html页面了!
补充1
其实一般是因为web服务器负载过大造成,检验增加带宽或使用cdn加速等临时解决下,一般iis或apache的连接数要根据自己的访问量增加,一般5000-10000就差不多了
补充2
问题
Service Temporarily Unavailable
解决方案
1 这是因为用户站点使用的带宽超过了设定的最高限额引起的。
为了不显示这个错误信息,可以在apache(Unix平台最流行的WEB服务器平台)的配置中加上一个配置,当超出带宽时,让访问变慢,而不是立即显示错误信息。
编辑/usr/Prima(最完善的虚拟主机管理系统)/apache(Unix平台最流行的WEB服务器平台)_ssl/conf/httpd.conf,找到<IfModule mod_throttle.c>,在块中加入
ThrottleMaxDelay 0
重起apache(Unix平台最流行的WEB服务器平台):
/etc/init.d/httpd restart
还可以编辑一个显示服务器忙的html文件,放到/www/icons/busy.html,在httpd.conf中加入:
ErrorDocument 503 /icons/busy.html
2 有可能是resin(一个免费的JSP运行平台) 服务有问题 在resin(一个免费的JSP运行平台)2中有提示 /etc/init.d/stop 停止 /etc/init.d/resin(一个免费的JSP运行平台) start
重起resin(一个免费的JSP运行平台) 服务器后有可能解决这个问题
[3]HTTPERR的日志中出现大量Timer_MinBytesPerSecond,Timer_ConnectionIdle错误
来源: 互联网 发布时间: 2013-12-24
在\LogFiles\HTTPERR的日志中发现了大量Timer_MinBytesPerSecond,Timer_ConnectionIdle错误,
根据网上的介绍,做了如下更改:
1) 从 IIS 管理器右键单击 本地计算机 选择 属性。勾选允许直接编辑配置数据库。
2) 在记事本中打开 C:\Windows\system32\inetsrv\MetaBase.xml 文件,
搜索MinFileBytesPerSec,将 MinFileBytesPerSec 设置从 240 更改为 0。
搜索ConnectionTimeout,将 ConnectionTimeout 设置从 120 更改为 600。
MinFileBytesPerSec如果不在C:\Windows\system32\inetsrv\MetaBase.xml 文件 就是在C:\Windows\system32\inetsrv\MBSchema.xml 文件
3)重新启动 IIS 。
在修改MBSchema尤其注意,停止IIS进程,第一步修改
MetaBase
•在“IIsComputer”节点中,将 EnableEditWhileRunning 的值从 0 (FALSE) 更改为 1 (TRUE)。所做更改应如下所示:
<IIsComputer Location ="/LM"
EnableEditWhileRunning="1"
EnableHistory="1"
MaxBandwidth="4294967295"
MaxHistoryFiles="10">
•将所做更改保存到 MetaBase.xml 文件中。
然后才能修改MBSchema文件。。。
-------------------------------另一种见解
前些天发现自己的网站无法访问,询问机房这边,说是机器最近常死机,我就把网站迁移到一个朋友的主机上, 结果没过几天机器又挂了,问朋友的机房那边说是硬件防火墙被攻击了而死掉了,详细情况不知。看来不是硬件问题,多半是被SYN FLOOD或者CC攻击了。恰好原来的机房说最近购买了新的防火墙,我又放了回去。
既然不是硬件问题而可能是攻击,我就开始检查IIS log了,发现 IIS 里面很多Timer_ConnectionIdle和Timer_MinBytesPerSecond的错误,到网络上google了一下,常见说法是说错误是因为IIS的设置不当引起的,是因为连接超时时间设置太小,解决方法是设置连接超时为600秒,把MinFileBytesPerSec的设置从240修改到0(相当于关掉该设置)。觉得这些解决方法都有问题,假如车辆防盗警报经常响,正确的解决方法是看看有谁常来打你车子的主意,或者把车子放在更安全的地方,而绝对不是关掉警报。
因为HTTP服务需要占用TCP连接,而TCP连接时是需要占用系统资源的,而且IIS为每个连接也需要分配相应的资源。目前的主机能够处理上万的连接就可以说是软硬件设计都很不错了(可以参见C10K )。假如恶意人员通过一台或者多台机器发起大量的连接,而不请求内容(这样不需要消耗多少攻击机器的带宽),就可以大量消耗服务器资源而达到拒绝服务的目的。
所以 IIS 需要关闭长时间非活动的连接,这个就是Timer_ConnectionIdle 的错误由来。
既然盾牌改进了,当然矛也要发展一下,攻击者可以给服务器故意缓慢的发送和接收内容而消耗服务器的资源,这样可以避免服务器对于Timer_ConnectionIdle 的保护,相应的IIS的防范就是 MinFileBytesPerSec 设置,MinFileBytesPerSec 属性通过以最小的数据量保持连接,来禁止恶意的或软件工作不正常的客户端消耗资源。如果吞吐量低于 MinFileBytesPerSec 设置的值,则终止连接。LOG里面就会显示Timer_MinBytesPerSecond错误(一些Timer_MinBytesPerSecond错误是因为 windows 2003 的http.sys错误引起的,解决方式是打上最新 ServicePack : http://support.microsoft.com/kb/919797 http://support.microsoft.com/kb/919797/en-us )
所以说这些设置都是用来保护IIS服务器的,可以一定程度上抵御一些恶意的行为消耗服务器的资源,所以我反而将IIS连接超时从原来的600秒改到了30秒
根据网上的介绍,做了如下更改:
1) 从 IIS 管理器右键单击 本地计算机 选择 属性。勾选允许直接编辑配置数据库。
2) 在记事本中打开 C:\Windows\system32\inetsrv\MetaBase.xml 文件,
搜索MinFileBytesPerSec,将 MinFileBytesPerSec 设置从 240 更改为 0。
搜索ConnectionTimeout,将 ConnectionTimeout 设置从 120 更改为 600。
MinFileBytesPerSec如果不在C:\Windows\system32\inetsrv\MetaBase.xml 文件 就是在C:\Windows\system32\inetsrv\MBSchema.xml 文件
3)重新启动 IIS 。
在修改MBSchema尤其注意,停止IIS进程,第一步修改
MetaBase
•在“IIsComputer”节点中,将 EnableEditWhileRunning 的值从 0 (FALSE) 更改为 1 (TRUE)。所做更改应如下所示:
<IIsComputer Location ="/LM"
EnableEditWhileRunning="1"
EnableHistory="1"
MaxBandwidth="4294967295"
MaxHistoryFiles="10">
•将所做更改保存到 MetaBase.xml 文件中。
然后才能修改MBSchema文件。。。
-------------------------------另一种见解
前些天发现自己的网站无法访问,询问机房这边,说是机器最近常死机,我就把网站迁移到一个朋友的主机上, 结果没过几天机器又挂了,问朋友的机房那边说是硬件防火墙被攻击了而死掉了,详细情况不知。看来不是硬件问题,多半是被SYN FLOOD或者CC攻击了。恰好原来的机房说最近购买了新的防火墙,我又放了回去。
既然不是硬件问题而可能是攻击,我就开始检查IIS log了,发现 IIS 里面很多Timer_ConnectionIdle和Timer_MinBytesPerSecond的错误,到网络上google了一下,常见说法是说错误是因为IIS的设置不当引起的,是因为连接超时时间设置太小,解决方法是设置连接超时为600秒,把MinFileBytesPerSec的设置从240修改到0(相当于关掉该设置)。觉得这些解决方法都有问题,假如车辆防盗警报经常响,正确的解决方法是看看有谁常来打你车子的主意,或者把车子放在更安全的地方,而绝对不是关掉警报。
因为HTTP服务需要占用TCP连接,而TCP连接时是需要占用系统资源的,而且IIS为每个连接也需要分配相应的资源。目前的主机能够处理上万的连接就可以说是软硬件设计都很不错了(可以参见C10K )。假如恶意人员通过一台或者多台机器发起大量的连接,而不请求内容(这样不需要消耗多少攻击机器的带宽),就可以大量消耗服务器资源而达到拒绝服务的目的。
所以 IIS 需要关闭长时间非活动的连接,这个就是Timer_ConnectionIdle 的错误由来。
既然盾牌改进了,当然矛也要发展一下,攻击者可以给服务器故意缓慢的发送和接收内容而消耗服务器的资源,这样可以避免服务器对于Timer_ConnectionIdle 的保护,相应的IIS的防范就是 MinFileBytesPerSec 设置,MinFileBytesPerSec 属性通过以最小的数据量保持连接,来禁止恶意的或软件工作不正常的客户端消耗资源。如果吞吐量低于 MinFileBytesPerSec 设置的值,则终止连接。LOG里面就会显示Timer_MinBytesPerSecond错误(一些Timer_MinBytesPerSecond错误是因为 windows 2003 的http.sys错误引起的,解决方式是打上最新 ServicePack : http://support.microsoft.com/kb/919797 http://support.microsoft.com/kb/919797/en-us )
所以说这些设置都是用来保护IIS服务器的,可以一定程度上抵御一些恶意的行为消耗服务器的资源,所以我反而将IIS连接超时从原来的600秒改到了30秒
不过经过我们解决问题发现时因为网站所在的应用程序池中请求队列限制,限制在1000,根据自己的网站流量,果断设置为 5000-10000就解决了,默认的1000确实有点少了
最新技术文章: