首页 > 学院 > 操作系统 > 正文

apache httpd监听端口配置错误导致的网站不能访问

2024-06-28 16:01:37
字体:
来源:转载
供稿:网友

apache httpd监听端口配置错误导致的网站不能访问

问题

服务器重启后,httpd 重启,发现直接访问域名www.xxx.cn不能访问了,但是通过https://www.xxx.cn还能正常访问。

查找原因

httpd的配置没有变过,80,443端口对应的vhost 配置没有问题在这台机器上访问网站 能正常跳转
# curl www.xxx.cn<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><html><head><title>301 Moved Permanently</title></head><body><h1>Moved Permanently</h1><p>The document has moved <a href="https://www.xxx.cn/">here</a>.</p></body></html>

3.通过查看端口

[# netstat -naop |grep 80tcp        0      192.168.1.10:80                  0.0.0.0:*                   LISTEN      13523/httpd         off (0.00/0/0)

发现该端口只在内网ip 上监听

查看/etc/hosts
192.168.1.10 www.xxx.cn

不知道什么时候有个这个配置,改为外网地址,重启httpd,果然可以访问了。

进一步排查httpd 的配置文件,httpd.conf 中
Listen www.xxx.cn:80

Listen:指定服务器监听的IP和端口。默认情况下Apache会在所有IP地址上监听。Listen是Apache2.0以后版本必须设置的指令,如果在配置文件中找不到这个指令,服务器将 无法启动。 语法:Listen [IP-address:]portnumber [PRotocol] Listen 192.168.2.1:80

6.果断改配置,所有IP上都监听80端口,不再依赖于host文件

Listen 80

至此,问题解决,不要轻易使用hosts文件来转发ip,容易被人改了,导致异常。



下一篇:systemctl

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表