Article / 文章中心

已接入CDN的网站迁移至Windows实例后访问该站点提示连接被拒绝的解决方法

发布时间:2020-08-31 点击数:692

问题描述

已接入CDN的网站迁移到另外一台Windows实例之后,该服务器上的所有站点均无法正常访问,访问时提示连接被拒绝。经过检查,发现了下列几点特征:

该服务器中的443端口正常开启,并且该服务器的负载和带宽没有明显变化。

该服务器使用宝塔(BT)面板搭建网站。

说明:BT面板默认采用Apache提供Web服务。

•Apacheerror_log中存在下列错误信息。

Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting

问题原因

通过Apacheerror_log可以判断,该服务器没有线程来处理请求。详情请参见更多信息。

解决方案

阿里云提醒您:

如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。

如果您对实例(包括但不限于ECSRDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。

如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

请参考下列步骤进行排查。

1.登录该服务器。

2.检查Apacheconf/httpd.conf配置文件中的ThreadsPerChild参数值是否为64

说明:Windows系统中ApacheThreadsPerChild参数默认值为64

3.如果ThreadsPerChild参数值为64,请参考下列内容,修改该参数值为512

ThreadsPerChild 512

MaxRequestsPerChild 0

注意:此处的512并非推荐值,请根据服务器的负载和访问情况进行调整。更多有关该参数的信息,请参见Apache MPM通用指令

4.保存并重启Apache服务。

5.检查网站是否可以正常访问。

更多信息

Windows系统中Apache程序使用mpm_winnt模块,该模块默认的线程数为64。当Web请求数超过该线程数时,Apache将无法正常提供服务。详细内容请参见Apache MPM模块

适用于

云服务器ECS

轻量应用服务器

阿里云金牌代理商 阿里云钻石级代理商