Apache进程正常,服务无法访问的解决方案

当遇到Apache服务出现HTTPError503且进程状态正常时,可能是由于配置不一致导致的自动重启。检查Apache的日志,特别是error.log,发现因SIGUSR1信号触发的重启。确认日志轮换配置是否引起重启,并检查ports.conf和000-default.conf中监听端口和默认虚拟主机端口是否一致。若不一致,修改后重启Apache服务,确保端口配置正确,从而恢复正常访问。
摘要由CSDN通过智能技术生成

Ubuntu系统云服务器Apache进程正常,服务无法访问(HTTP Error503)的解决方案之一

  • 网上很多资料都指向服务器防火墙未关或云服务提供商的安全组设定未放开,大家可以先尝试以上两种问题,如果不是欢迎继续阅读。
  • 另外首先请大家执行重启,确保Apache更新你之前的所有配置,同时再测试一遍是否能访问。
/etc/init.d/apache2 restart #重启
  • 如不能,一个解决方案如下所示:

1.问题发现

将静态HTML网页利用Apache2中的httpd服务部署到服务器上,并通过”IP:Port+页面“的形式访问,但在部署完成后的第二天发现目标无法访问(浏览器报错HTTP Error503),但查看Apache2进程状态为running。

sudo systemctl status apache2	  #Debian/Ubuntu 
systemctl status httpd	  #RHEL/CentOS/Fedora 

在这里插入图片描述

2.问题排查

2.1 查看访问日志与错误日志

cat /var/log/apache2/error.log.1 #最后一项可根据自己的日志修改

在这里插入图片描述
发现是有一个信号SIGUSR1被捕获,然后Apache2服务执行了重启。其中信号SIGUSR1使得父进程建议子进程在完成它们现在的请求后退出(如果他们没有进行服务,将会立刻退出)。父进程重新读入配置文件并重新打开日志文件。每当一个子进程死掉,父进程立刻用新的配置文件产生一个新的子进程并立刻开始伺服新的请求。这代表着Apache2的自动重启计划,以便于模型的稳定,同时可以执行日志的更迭。
在这里插入图片描述

2.2 查看日志配置

cat /etc/logrotate.d/apache2

在这里插入图片描述
我们可以看到日志以天为单位更换,这也可能导致Apache2环境重启。但是为什么重启之后服务就挂掉,不能访问了呢?笔者检查了访问日志与发生重启时的连接数都没问题,进行到这,我们多半可以确定是Apache2在安装时配置的问题了。

2.3 检查端口配置

查看port.conf和sites-enabled/000-default.conf

vim /etc/apache2/ports.conf #检查监听端口

在这里插入图片描述

vim /etc/apache2/sites-enabled/000-default.conf #检查默认启动虚拟机主机端口

在这里插入图片描述

3.解决方案

如果两者不一致,请修改为一致后重启。

/etc/init.d/apache2 restart #重启

并使用【ip地址:端口号 页面地址】,如:(只有端口号为80时,可以默认不加端口号)

http://82.157.118.181:63342/index.html

即可正常访问。

  • 造成此问题的具体原因是,在配置文件时只修改了其中一个(监听或者默认启动的端口号),导致Apache2服务自动重启后端口不一致而无法提供服务。
  • 解决方案简述:查看配置文件,修改后重启。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值