Impossibile determinare in modo affidabile il nome di dominio completo del server


110

Ho appena installato Apache 2.2.17 e lo sto usando per la prima volta.

Ora quando provo ad avviare il server usando il comando service httpd startmi dà il messaggio:

httpd: Impossibile determinare in modo affidabile il nome di dominio completo del server, utilizzando :: 1 per ServerName

Ora penso di dover impostare ServerName e l'indirizzo IP mentre cerco su Google. Ma non so in quale file devo impostare.

Come posso risolvere questo problema?

Risposte:


66

Sì, dovresti impostare ServerName:

http://wiki.apache.org/httpd/CouldNotDetermineServerName

http://httpd.apache.org/docs/current/mod/core.html#servername

Puoi trovare informazioni sui layout usati dalle varie distribuzioni httpd qui:

http://wiki.apache.org/httpd/DistrosDefaultLayout

Nel tuo caso il file da modificare è /etc/httpd/conf/httpd.conf


Ehi grazie mille per le tue risposte, ho modificato /etc/httpd/conf/httpd.conf e provo a impostare ServerName come segue Listen 80 NameVirtualHost 172.20.30.40:80 <VirtualHost 172.20.30.40:80> ServerName www.example1.com DocumentRoot / home / user / Softwares / mysite / </VirtualHost>** Ma continuo a ricevere un messaggio di errore sotto .. ** Avvio di httpd: Attenzione: DocumentRoot [/ home / user / Softwares / mysite] non esiste httpd: Impossibile determinare in modo affidabile il server completo nome di dominio qualificato, utilizzando :: 1 per ServerName
mahesh

81
  1. sudo vim /etc/apache2/httpd.conf
  2. Inserisci la seguente riga in httpd.conf: ServerName localhost
  3. Basta riavviare Apache: sudo /etc/init.d/apache2 restart

2
Sul mio RPi ho dovuto mettere il file httpd.conf in /etc/apache2/conf.d perché funzionasse.
samkass

Usando Ubuntu 13.04, ho dovuto metterlo anche in /etc/apache2/conf.d/httpd.conf, nient'altro ha funzionato ...
user1853181

Grazie, questo ha risolto anche il mio problema. Recentemente ho impostato il nome host effettivo in / etc / hosts e questo ha rotto Apache fino a quando non ho impostato ServerName localhost nel contesto globale. Ora il vhost funziona di nuovo e il certificato SSL viene servito correttamente.
AaronM

15

NON stavo sbagliando il ServerName. All'interno della configurazione di VirtualHost che sta causando questo messaggio di avviso, è quello generico nella parte superiore del tuo httpd.conf che è commentato per impostazione predefinita .

Modificare

#ServerName www.example.com:80

per:

  ServerName 127.0.0.1:80

10

Sotto Debian Squeeze;

  1. Modifica il file di configurazione di Apache2: vim /etc/apache2/apache2.conf
  2. Inserire la seguente riga in apache2.conf: ServerName localhost
  3. Riavvia Apache2: apache2ctl restart o /etc/init.d/apache2 restart

Dovrebbe funzionare bene (ha risolto il problema nel mio caso)

tks noodl per il collegamento sui diversi layout. :)


4

Un'altra opzione è assicurarsi che il nome host completo (FQDN) sia elencato in / etc / hosts. Questo ha funzionato per me su Ubuntu v11.10 senza dover modificare la configurazione predefinita di Apache.


4
  1. sudo nano /etc/apache2/httpd.conf
  2. cerca un testo ServerNamein nano editor<Ctrl + W>
  3. Inserisci la seguente riga in httpd.conf: ServerName localhost
  4. Basta riavviare Apache: sudo /usr/sbin/apachectl restart

3

"Per risolvere questo problema è necessario impostare ServerName.

1: $ vim /etc/apache2/conf.d/name Ad esempio, impostare aggiungi ServerName localhost o qualsiasi altro nome:

2: ServerName localhost Riavvia Apache 2

3: $ service apache restart Per questo esempio utilizzo Ubuntu 11.10.1.125 "


1

FQDN indica il nome risolto su DNS. Dovrebbe essere come "nome-server.search-dominio".

L'avviso che ricevi fornisce solo un avviso che httpd non riesce a trovare un FQDN, quindi potrebbe non funzionare correttamente per gestire un host virtuale basato sul nome. Quindi assicurati che l'FQDN previsto sia registrato nel tuo server DNS o aggiungi manualmente la voce in /etc/hostscui è prima di colpire DNS.


0

Due cose sembravano farlo per me:

  1. Metti tutti gli alias per 127.0.0.1 in / etc / hosts in una singola riga (es 127.0.0.1 localhost mysite.local myothersite.local
  2. Impostato ServerNamenel mio httpd.conf su 0.0.0.0(localhost o 127.0.0.1 non ha funzionato per me)

La modifica di / etc / hosts ha eliminato i lunghi tempi di risposta e l'impostazione di ServerName ha eliminato l'avviso di OP per me.


0

che non sono ancora in grado di risolvere il problema e utilizzano Mac, quindi seguire questo

1. vai alla cartella principale /

  1. cd usr / local / etc / apache2 / 2.4

3.sudo nano httpd.conf

4.cambia #servername in ServerName 127.0.0.1:8080 premi ctrl + o, + return + ctrl x

5.quindi riavviare il server apachectl riavvio


0

Se stai usando Windows, la situazione è diversa

Primo aperto c:/apache24/conf/httpd.conf. La cartella Apache è sufficiente non specificamente sopra il percorso

Dopodiché devi configurare il file httpd.conf.

Subito dopo poche righe c'è un pattern come:

#Listen _____________:80
Listen 80

Qui devi cambiare per il localhost.

Devi inserire l'indirizzo ipv4 per questo puoi aprire localhost.

Fare riferimento a questo collegamento video e poi ancora un po '.

Cambia le tue variabili d'ambiente:

Immagine per le variabili d'ambiente USER nelle impostazioni di sistema

In cui devi inserire il percorso:

c:apache24/bin

e lo
stesso nelle variabili SYSTEM

L'immagine è per il percorso delle variabili di sistema

In caso di domande, non esitare a chiedere.


0

Se stai usando Windows, rimuovi i commenti su queste righe e impostali come:

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

Ha funzionato per me!


0

Ecco i miei due centesimi. Forse è utile per i futuri lettori.

Ho riscontrato questo problema durante l'utilizzo di Apache all'interno di un container Docker. Quando ho avviato un container da un'immagine del server web Apache, questo messaggio è apparso quando l'ho avviato con docker run -it -p 80:80 my-apache-container.

Tuttavia, dopo aver avviato il contenitore in modalità scollegata, utilizzando docker run -d -p 80:80 my-apache-container, sono stato in grado di connettermi tramite il browser.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.