apache启动报错:httpd: apr_sockaddr_info_get() failed

softyun3年前云服务器50

重启apache:
service httpd restart
虽然重启成功,但却给出如下的提示信息:
httpd: apr_sockaddr_info_get() failed for hoteel
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

究其原因是因为在配置DNS的时候hostname hoteel造成的,重新hostname localhost就可以了。

附:网上找到的相关文章

1、在启动 httpd 时出现
Starting httpd: httpd: apr_sockaddr_info_get() failed for MYHOST
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName.
这个问题应该是没有在 /etc/httpd/conf/httpd.conf 中设定 ServerName 所以它会用主机上的名称来取代,首先会去找 /etc/hosts 中有没有主机的定义。
所以要解决这个问题可以设定 ServerName 或者在 /etc/hosts 中填入自己的主机名称 MYHOST,像这样:
>vi /etc/hosts
127.0.0.1 localhost.localdomain localhost MYHOST

2、在Linux下安装完Apache 2.2.6,启动HTTP服务报错
[root@linux http]# ./apachectl start
httpd: apr_sockaddr_info_get() failed for linux(在BSD上是apr_sockaddr_info_get() failed for freebsdla)
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

经分析发现是apache的conf目录下的配置文件httpd.conf中关于hostname设置和/etc/sysconfig/network中的HOSTNAME设置不统一导致的,修改成统一的主机名即可解决该问题。

注:/etc/sysconfig/network 默认主机名是:HOSTNAME=localhost.localdomain

PS:网上有这种办法,似乎是没用的,因为我认为apache在编译安装过程中会编译ARP的,因此下述操作有点多余。

apr 和apr-util包含在Apache httpd的发行源代码中,并且在绝大多数情况下使用都不会出现问题。当然,如果apr或apr-util的1.0或1.1版本已经安装在你的系统中了, 则必须将你的apr/apr-util升级到1.2版本,或者将httpd单独分开编译。要使用发行源代码中自带的apr/apr-util源代码进行安 装,你必须手动完成:

 

复制代码 代码如下:

# 编译和安装 apr 1.2
apr
./configure --prefix=/x/httpd/apr
make
make install
apr-util
./configure --prefix=/x/httpd/apr_util --with-apr=/x/httpd/apr
make
make install
apache
./configure --prefix=/x/httpd/apache2 \
--enable-so \
--enable-cgi \
--enable-rewrite \
--enable-mods-shared=all \
--with-apr=/x/httpd/apr \
--with-apr-util=/x/httpd/apr_util
LDFLAGS="-L/usr/lib64 -L/lib64"

 

本机正确设定说明 必须为同一的
[root@spring ~]# nl /etc/hosts
     1 # Do not remove the following line, or various programs
     2 # that require network functionality will fail.
     3 127.0.0.1 localhost.localdomain spring

[root@spring ~]# nl /etc/sysconfig/network
     1 NETWORKING=yes
     2 NETWORKING_IPV6=no
     3 HOSTNAME=spring
     4 #GATEWAY=192.168.8.1

[root@spring ~]# less /etc/httpd/conf/httpd.conf|grep ServerName
# ServerName gives the name and port that the server uses to identify itself.
#ServerName example:80
ServerName 127.0.0.1

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

免费空间可以放几个网站

免费空间可以放几个网站是由虚拟主机平台的技术决定的,一般免费空间只能放一个网站,并且与他人共用IP,因为免费空间指的是免费的虚拟主机,主机商会控制成本,从而降低自身投入资金。具体内容如下:按照虚拟主机...

云服务器相对VPS有哪些优势

云服务器相对VPS的优势:1. 云服务器在配置上的没有升级上限,而且采用分布式集群架构可以支持弹性升级,升级上限大。2. VPS相对比较便宜,但是在数据安全性上却不如云服务器,云服务器的数据存储方面采...

外贸仿牌vps服务器租用有哪些优势

外贸仿牌vps服务器租用的优势有:1、提高应用效率外贸仿牌vps服务器租用可以大大提高企业的应用效率,使企业在其他同行企业中脱颖而出,更好地实现外贸发展。2、提高客户体验此外,外贸仿牌vps服务器也可...

使用美国免费vps卡顿怎么办

使用美国免费vps卡顿的解决方法:1、增加带宽,能有效负载小规模的网络攻击,让网站更稳定;2、更换合适的网络线路,满足网站用户的访问需求;3、考虑硬件配置是否能够承载业务需求,按实际情况升级服务器硬件...

美国服务器租用怎么选择

美国服务器租用选择的方法:1、选择比较可靠的国际线路,延迟低,有利于搭建网站的访问速度;2、考察机房的硬件配置,如CPU是否是专业的服务器CPU,是否支持raid等,同时选择符合自身业务的美国服务器硬...

Docker 清理命令集锦

杀死所有正在运行的容器复制代码 代码如下:docker kill $(docker ps -a -q)  删除所有已经停止的容器复制代码 代码如下:docker rm $(docker ps -a -...