Vraag apache2: Kon de volledig gekwalificeerde domeinnaam van de server niet betrouwbaar vaststellen, met behulp van 127.0.1.1 voor ServerName


Ik krijg steeds deze waarschuwing wanneer ik (opnieuw) met Apache start.

* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName [ OK ]

Dit is de inhoud van mijn etc/hosts het dossier:

#127.0.0.1  hpdtp-ubuntu910
#testproject.localhost  localhost.localdomain   localhost
#127.0.1.1  hpdtp-ubuntu910

127.0.0.1   localhost
127.0.0.1   testproject.localhost
127.0.1.1   hpdtp-ubuntu910



# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Dit is de inhoud van mijn /etc/apache2/sites-enabled/000-default het dossier:

<VirtualHost *:80>
  ServerName testproject.localhost
  DocumentRoot "/home/morpheous/work/websites/testproject/web"
  DirectoryIndex index.php
  <Directory "/home/morpheous/work/websites/testproject/web">
    AllowOverride All
    Allow from All
  </Directory>

  Alias /sf /lib/vendor/symfony/symfony-1.3.2/data/web/sf
  <Directory "/lib/vendor/symfony/symfony-1.3.2/data/web/sf">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

Wanneer ik naar ... Ga http://testproject.localhost, Ik krijg een lege pagina.

Kan iemand zien wat ik verkeerd doe?


72
2018-01-16 19:24


oorsprong




antwoorden:


Ubuntu geeft standaard geen servernaam op in de Apache-configuratie, omdat het niet weet wat de naam van uw server is. Het probeert een reverse lookup op uw IP-adres, dat niets terugstuurt, dus het hoeft alleen maar het IP-adres te gebruiken als Server naam.

Om het probleem te verhelpen, voegt u een ServerName-richtlijn toe buiten een virtuele host - b.v. in /etc/apache2/httpd.conf, of stel een omgekeerde DNS-reactie in voor uw primaire IP-adres - in dit geval 127.0.1.1

Het is prima om het ook te negeren.


53
2018-01-16 21:37



Dit is contra-intuïtief. Als ik de servernaam toevoeg buiten van alle virtuele hosts - hoe kan ik meerdere virtuele hosts van dezelfde Apache-server bedienen? (dit is tenslotte het punt van de naam van virtuele servers) - TENZIJ je zegt dat ik meer dan 1 ServerName-item kan hebben in (laten we zeggen) /etc/apache2/httpd.conf - user35402
U kunt vervolgens Servernaam / ServerAlias ​​toevoegen aan VirtualHost-blokken om ervoor te zorgen dat VirtualHost alleen overeenkomt met de gewenste hostnamen. Lezen httpd.apache.org/docs/2.2/mod/core.html#servername voor de low-down. - crb
Ik ben al meer dan een uur op zoek naar dit antwoord. Zoveel rotzooi op het internet met betrekking tot dit, maar dit loste mijn probleem op. Dankje - Mike
@Mij jou en anderen zijn geniaal! Ik ben op zoek naar dit antwoord voor vier dagen. (Ok, niet volledig werkdagen.). +1 omdat dit het eerste antwoord is dat uitlegt dat ik een ServerName-instructie buiten virtuele hosts kan toevoegen zonder deze aan te tasten. Met dat in gedachten werkte de oplossing van ReinoutS voor mij (+1 voor hem ook). - Sony Santos


Hier is een snelle oplossing:

echo ServerName $HOSTNAME > /etc/apache2/conf.d/fqdn

27
2018-03-15 16:25



Bedankt. Geen van de oplossingen met / etc / hosts noch httpd.conf werkte voor mij, maar dit deed. - Ryan
Perfect bedankt! - James
Opgedeeld op Ubuntu 13.04 met apache2, dank je! - dmanexe
Werkte prima op de huidige Debian Wheezy :) Bedankt - DominikAngerer


Een andere manier om deze waarschuwing te omzeilen, is om een ​​volledig gekwalificeerde domeinnaam op de 127.0.1.1 regel van /etc/hosts. Het hoeft niet eens een fqdn te zijn die eigenlijk alles zou oplossen op een dns-server.

127.0.1.1  hpdtp-ubuntu910.lan  hpdtp-ubuntu910

zou het lukken, terwijl het ook het gedrag bewaart van programma's die het extra niet verwachten .lan. De volgorde is belangrijk; namen met meer niveaus moeten eerst worden opgegeven, zoals in dit voorbeeld waar de .lan adres komt vóór het andere adres.


16
2018-03-03 04:45





Deze oplossing werkt voor mijn ontwikkelingsbehoeften:

Achtergrond:

Debian Linux Sid:
VirtualHost Development: ik heb 10 servernamen (10 virtualhost-entries binnen sites-beschikbaar)

Ik heb aan elke persoon een uniek localhost IP-adres toegewezen /etc/hosts:

127.0.0.1   joe   localhost.localdomain   localhost
127.0.1.1   joe
127.0.1.2   joomla
127.0.1.3   schmoo
127.0.1.4   forrest
127.0.1.5   store
127.0.1.6   publisher
127.0.1.7   studios
127.0.1.8   drupal
127.0.1.9   graphics
127.0.1.10  wordpress
...

The following lines are desirable for IPv6 capable hosts

::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Als je een andere virtualhost gaat toevoegen (ik heb er nogal wat voor ontwikkeld), voeg dan een entry toe aan een ander localhost IP-adres en schakel de site in voordat je Apache 2.2 herstart:

127.0.0.11 *newhost*

Voor elk item dat u wilt inschakelen als een VirtualHost-bestand:

/ Etc / apache2 / sites-available /

joe joomla schoo forrest winkel uitgever studios drupal graphics wordpress

Alle virtuelehosts worden ingeschakeld / uitgeschakeld via a2ensite / a2dissite hostname

Om de fout te onderdrukken

Opnieuw opstarten webserver: apache2apache2: Kon de betrouwbaarheid van de server niet volledig bepalen   gekwalificeerde domeinnaam, met behulp van 127.0.0.1 voor ServerName   ... waiting apache2: Kon het volledig gekwalificeerde domein van de server niet betrouwbaar bepalen   name, met behulp van 127.0.0.1 voor ServerName ''

Bewerk httpd.conf in /etc/apache2/httpd.conf [leeg bestand in Debian]:

ServerName 127.0.1.1

Opzoeken wordt dan voor alle namen opgelost toevoegen, commentaar uit of onbruikbaar maken langs de lijn.

In het geval u het vergeet: het enige VirtualHost *: 80-item hoeft alleen binnen de ports.conf het dossier,

/etc/apache2/ports.conf

**NameVirtualHost *:80**
Listen 80

<IfModule mod_ssl.c>
   # If you add NameVirtualHost *:443 here, you will also have to change
   # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
   # to <VirtualHost *:443>
   # Server Name Indication for SSL named virtual hosts is currently not
   # supported by MSIE on Windows XP.
   Listen 443
</IfModule>

<IfModule mod_gnutls.c>
   Listen 443
</IfModule>

Laat je uit binnen je VirtualHost-invoer VirtualHost *: 80

Voorbeeld: virtualhost joe

<VirtualHost *:80>
    **ServerAlias joe**
    **...**
</VirtualHost>

7
2018-02-15 11:43





omgeving ServerName in httpd.conf werkte niet voor mij. Ik heb het opgelost door in te stellen ServerName 127.0.0.1 in /etc/apache2/conf.d/name.

Ik gebruik Ubuntu 12.10 Alpha3 en heb ServerName gedefinieerd in beide spots.

Bron: http://linuxconfig.net/manual-howto/error-solution-could-not-reliably-determine-the-servers-fully-qualified-domain-name.html


6
2017-09-08 21:05



Cool, dit werkte ook voor mij, had hetzelfde probleem. - Priyank Bolia


U mist een ServerName-vermelding op serverconfiguratieniveau. U moet een ServerName-item buiten elke host hebben, zodat Apache als standaard kan worden gebruikt.

Als u een ServerName-item in een VirtualHost plaatst, wordt het probleem niet verholpen. Zien ServerName-richtlijn.


5
2018-01-16 21:36





Om dit te verhelpen, moeten we de /etc/apache2/httpd.conf of /etc/apache2.conf bewerken en de volgende regel toevoegen:

ServerName nameofserver

3
2018-01-08 10:24



Je hebt gelijk! Maar dit antwoord dupliceert de inhoud van het antwoord van crb zonder nieuwe informatie of inzichten te verstrekken. Ik zou overwegen om het te verwijderen of meer details toe te voegen die anders zijn dan de antwoorden van anderen. - Royce Williams
Dit heeft me aan de gang gebracht, bedankt! - Drewdin


Ik geloof dat je moet toevoegen ServerName voor de standaard virtuele host. Omdat het er niet is, neemt het het standaard IP-adres. En het is een soort waarschuwing. Uw webserver zal nog steeds functioneel zijn denk ik.


1
2018-01-16 20:21



Ik begrijp uw commentaar niet. Ik heb al Servernaam in mijn bestand: <VirtualHost 127.0.0.1:8080> Servernaam mysite.localhost Kunt u uw opmerking alstublieft verduidelijken?
Voor de -default- virtuelehost, niet alleen een specifieke virtualhost. - Kzqai