Apache2 无法可靠地确定服务器';s完全限定域名

Apache2 无法可靠地确定服务器';s完全限定域名,apache2,fedora,Apache2,Fedora,我刚刚安装了Apache2.2.17,这是我第一次使用它 现在,当我尝试使用命令service httpd start启动服务器时,它会显示以下消息: httpd:无法可靠地确定服务器的完全限定域名,使用::1作为ServerName 现在我想我必须在谷歌搜索时设置服务器名和IP地址。但我不知道我必须在哪个文件中设置 如何解决此问题?是的,您应该设置服务器名: 您可以在此处找到各种httpd发行版使用的布局信息: 在您的例子中,要编辑的文件是/etc/httpd/conf/httpd.co

我刚刚安装了Apache2.2.17,这是我第一次使用它

现在,当我尝试使用命令
service httpd start
启动服务器时,它会显示以下消息:

httpd:无法可靠地确定服务器的完全限定域名,使用::1作为ServerName

现在我想我必须在谷歌搜索时设置服务器名和IP地址。但我不知道我必须在哪个文件中设置


如何解决此问题?

是的,您应该设置服务器名:

您可以在此处找到各种httpd发行版使用的布局信息:

在您的例子中,要编辑的文件是/etc/httpd/conf/httpd.conf

  • sudo-vim/etc/apache2/httpd.conf
  • 在httpd.conf处插入以下行:
    ServerName localhost
  • 只需重新启动Apache:
    sudo/etc/init.d/apache2 restart
  • 在Debian挤压下

  • 编辑Apache2 conf文件:vim/etc/Apache2/Apache2.conf
  • 在apache2.conf中插入以下行:ServerName localhost
  • 重启Apache2:apache2ctl重启或/etc/init.d/Apache2重启
  • 应该可以正常工作(在我的情况下,它确实解决了问题)


    tks noodl用于不同布局上的链接。:)

    另一个选项是确保在/etc/hosts中列出完整的限定主机名(FQDN)。
    这对我来说在Ubuntu v11.10上很有效,而不必更改默认的Apache配置

    FQDN表示通过DNS解析的名称。它应该类似于“服务器名.搜索域”


    您得到的警告只是提供了一个通知,即httpd找不到FQDN,因此它可能无法正确处理基于名称的虚拟主机。因此,请确保在DNS服务器中注册了预期的FQDN,或者在点击DNS之前在
    /etc/hosts
    中手动添加条目。

    我没有弄错服务器名。在导致此警告消息的VirtualHost配置中,它是httpd.conf顶部附近的通用配置,默认情况下,该配置已注释

    改变

    #ServerName www.example.com:80
    
    致:


    有两件事似乎对我有帮助:

  • 将/etc/hosts中127.0.0.1的所有别名放在一行中(例如
    127.0.0.1 localhost mysite.local myothersite.local
  • 在我的httpd.conf中将
    ServerName
    设置为
    0.0.0
    (localhost或127.0.0.1对我不起作用)

  • 编辑/etc/hosts消除了长响应时间,设置服务器名消除了OP对我的警告。

    仍然无法解决问题的用户,请使用mac,然后按照此操作

    1.转到根文件夹/

  • cd usr/local/etc/apache2/2.4
  • 3.sudo nano httpd.conf

    4.将#servername更改为servername 127.0.0.1:8080按ctrl+o、+return+ctrl-x

    5.然后重新启动服务器apachectl restart

  • sudo nano/etc/apache2/httpd.conf
  • 在nano编辑器中搜索文本
    ServerName
  • 在httpd.conf处插入以下行:
    ServerName localhost
  • 只需重新启动Apache:
    sudo/usr/sbin/apachectl restart

  • 如果您使用的是windows,则会出现不同的情况

    首先打开
    c:/apache24/conf/httpd.conf
    。 Apache文件夹已经足够了,不需要特别在路径上方

    之后,您必须配置httpd.conf文件

    就在几行之后,出现了如下模式:

    #Listen _____________:80
    Listen 80
    
    您必须在这里更改
    localhost

    您必须输入ipv4地址才能打开localhost

    参考这个视频链接,然后再多看一点

    更改环境变量:

    您必须在其中输入路径:

    c:apache24/bin
    

    在系统变量中也是如此

    如果有任何查询,请随时询问。

    “要解决此问题,您需要设置ServerName。

    1:
    $vim/etc/apache2/conf.d/name
    例如,set add ServerName localhost或任何其他名称:

    2:ServerName本地主机 重新启动Apache2

    3:
    $service apache restart

    在本例中,我使用的是Ubuntu 11.10.1.125“

    如果您使用的是windows,请删除这些行上的注释并将其设置为:

    Line 227 : ServerName 127.0.0.1:80 
    Line 235 : AllowOverride all 
    Line 236 : Require all granted
    

    为我工作!

    这是我的两分钱。也许对未来的读者有用

    我在Docker容器中使用Apache时遇到了这个问题。当我从Apache Web服务器的映像启动容器时,当我使用
    Docker run-it-p 80:80 my Apache容器启动容器时出现了此消息


    但是,在以分离模式启动容器后,使用docker run-d-p 80:80我的apache容器
    ,我能够通过浏览器连接。

    嘿,对于您的Answare,我已经编辑了/etc/httpd/conf/httpd.conf,并尝试如下设置ServerName Listen 80 NameVirtualHost 172.20.30.40:80 ServerName www.e示例1.com DocumentRoot/home/user/Softwares/mysite/
    *
    *但我仍然收到下面的错误消息..**Starting httpd:Warning:DocumentRoot[/home/user/Softwares/mysite]不存在httpd:无法可靠地确定服务器的完全限定域名,在我的RPi上使用::1 for servername,我必须将httpd.conf文件放在/etc/apache2/conf.d中才能工作。使用Ubuntu13.04,我还必须将它放在/etc/apache2/conf.d/httpd.conf中,其他任何操作都不起作用……谢谢你,这也解决了我的问题。我很高兴在/etc/hosts中设置实际主机名,这破坏了apache,直到我在全局上下文中设置ServerName localhost。现在vhost重新工作,SSL证书得到了正确的服务。在我的例子中,我编辑了
    /etc/apache2/apache2.conf
    我在端口80(organizr)上运行了另一个服务,因此我不得不修改侦听器端口(第60行)。还添加了防火墙规则,但不是必需的。``listen4444``我必须执行以下操作:
    Line 227 : ServerName 127.0.0.1:80 
    Line 235 : AllowOverride all 
    Line 236 : Require all granted