我尝试在CentOS 5.0上重新启动我的Apache服务器并收到此消息:
httpd:无法可靠地确定服务器的完全限定域名,使用127.0.0.1 for ServerName
以下是/etc/hosts
文件:
127.0.0.1 server4-245 server4-245.com localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
以下是/etc/sysconfig/network
文件:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=server4-245
我在Apache httpd.conf文件中也有这个:
ServerName localhost
但是,当我重新启动Apache时,仍然会收到第一条错误消息。
答案 0 :(得分:203)
如果文件夹httpd.conf
中没有/etc/apache2
,则应该有apache2.conf - 只需添加:
ServerName localhost
然后重新启动apache2
服务。
答案 1 :(得分:87)
您的主机文件不包含有效的FQDN,localhost
也不包含FQDN。 FQDN必须包含主机名部分以及域名部分。例如,以下是有效的FQDN:
host.server4-245.com
选择一个FQDN,并将其包含在您正在使用的IPv4和IPv6地址/etc/hosts
文件中(在您的情况下为localhost
或127.0.0.1
),并更改您的{您的httpd配置中的{1}}匹配。
/ etc / hosts中:
ServerName
的httpd.conf:
127.0.0.1 localhost.localdomain localhost host.server4-245.com
::1 localhost.localdomain localhost host.server4-245.com
答案 2 :(得分:61)
初次安装Apache服务器后,在Ubuntu 12.04(精确穿山甲)上重启Apache服务时出现以下错误
解决方案非常简单。只需将ServerName
指令添加到/etc/apache2/httpd.conf
:
sudo nano /etc/apache2/httpd.conf
添加:ServerName localhost
最后重启Apache服务器:
sudo /etc/init.d/apache2 restart
答案 3 :(得分:10)
所以虽然这个问题得到了回答和接受,但它仍然是一个热门的搜索结果,但是经过大量研究后得出的答案让我摸不着头脑,进一步深入挖掘。所以这里是我如何解决问题的快速布局。
假设我的服务器是myserver.myhome.com,我的静态IP地址是192.168.1.150:
$ sudo nano -w /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
127.0.0.1 myserver.myhome.com myserver
192.168.1.150 myserver.myhome.com myserver
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
::1 myserver.myhome.com myserver
编辑httpd.conf
$ sudo nano -w /etc/apache2/httpd.conf
ServerName myserver.myhome.com
编辑网络
$ sudo nano -w /etc/sysconfig/network HOSTNAME=myserver.myhome.com
验证
$ hostname
(output) myserver.myhome.com
$ hostname -f
(output) myserver.myhome.com
重启Apache
$ sudo /etc/init.d/apache2 restart
看来差异包括myserver.myhome.com
到127.0.0.1以及hosts文件中的静态IP地址192.168.1.150。在Ubuntu Server和CentOS上也一样。
答案 4 :(得分:8)
在httpd.conf中,搜索“ServerName”。它通常在Mac上默认注释掉。只需取消注释并填写即可。确保在/ etc / hosts中也设置了名称/ ip组合。
答案 5 :(得分:3)
在Apache httpd.conf
文件中:
ServerName: 127.0.0.1
答案 6 :(得分:3)
确保您正在编辑正确的httpd.conf
文件,然后关于不可靠服务器域名的错误应该消失(这是最常见的错误)。
要找到您的httpd.conf
Apache配置文件,请运行:
apachectl -t -D DUMP_INCLUDES
然后编辑该文件并取消注释或将ServerName
行更改为:
ServerName localhost
然后通过以下方式重新启动您的apache:sudo apachectl restart
答案 7 :(得分:2)
有两种方法可以解决此错误:
Include /etc/apache2/httpd.conf
在文件 /etc/apache2/apache2.conf
在文件末尾添加此行 /etc/apache2/apache2.conf :
ServerName localhost
答案 8 :(得分:0)
我通过将我的服务器主机名添加到/etc/apache2/httpd.conf文件和/etc/apache2/apache2.conf
文件,在不同的场合解析了完全限定的域名消息。
在终端中输入hostname -f
。此查询将返回您的主机名。
然后编辑/etc/apache2/httpd.conf
文件(如果由于某种原因不存在,则创建它)并添加ServerName <your_hostname>
。
或者,我也可以通过将ServerName <your_hostname>
添加到/etc/apache2/apache2.conf
文件来消除此消息。
如果一切顺利,当您重新启动Apache时,消息将消失。
答案 9 :(得分:0)
原来,我遇到了这个问题,这是因为我使用“制表符”来缩进行而不是空格。只是发布,以防万一。
答案 10 :(得分:0)
如果您使用volumeInfo.getImageLinks()
编辑了/etc/apache2/httpd.conf
,则可能是编辑了错误的文件。我发现的所有答案都指向该标准httpd.conf。经过一些觅食,我找到了一个很好的答案here。
要找到正确的httpd.conf文件,请使用
ServerName localhost
我发现我的实际上是apachectl -t -D DUMP_INCLUDES
。
使用您喜欢的编辑器将以ServerName开头的行注释掉(例如,删除/usr/local/etc/httpd/httpd.conf
),并为相应的域名替换域名-本地环境应该可以使用
#
我希望这可以帮助更多可能陷入困境的人。