6 # 13.04 i starsze
To tylko przyjazne ostrzeżenie i tak naprawdę nie stanowi problemu (ponieważ pod tym względem coś nie działa).
Jeśli pójdziesz do:
/etc/apache2/apache2.conf
i wstaw:
ServerName localhost
a następnie ponownie uruchom apache, wpisując w terminalu:
sudo systemctl reload apache2
zawiadomienie zniknie.
Jeśli masz w środku nazwę /etc/hostname
, możesz również użyć tej nazwy zamiast localhost
.
I używa, 127.0.1.1
jeśli jest w twoim /etc/hosts
:
127.0.0.1 localhost
127.0.1.1 myhostname
Preferowana metoda
Rozwiązywanie problemów z Apache
Jeśli pojawi się ten błąd:
apache2: Could not determine the server's fully qualified domain name,
using 127.0.0.1 for ServerName
następnie użyj edytora tekstu, takiego jak „sudo nano” w wierszu polecenia lub „gksudo gedit” na pulpicie, aby utworzyć nowy plik,
sudo nano /etc/apache2/conf.d/fqdn
lub
gksu "gedit /etc/apache2/conf.d/fqdn"
następnie dodaj
ServerName localhost
do pliku i zapisz. Można to wszystko zrobić za pomocą jednego polecenia, wykonując następujące czynności:
echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn
Ale w Ubuntu 14.04:
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
sudo a2enconf fqdn
Nie zapomnij o „.conf” (bez nie będzie działać).
ServerName localhost
nim/etc/apache2/conf.d/
nie istnieje po mojej instalacjilamp-server^
w 14.04sudo a2enconf fqdn
że technicznie powinien być taki sam.13.10 lub nowszy
Począwszy od Apache 2.4 - która jest domyślnie dostępna od 13.10 - nie można użyć metody dodawania pliku konfiguracyjnego do
conf.d
katalogu.Apache nie korzysta już z
conf.d
katalogu. Wszystkie pliki konfiguracyjne są przechowywane w/etc/apache2/conf-available
katalogu, a wszystkie pliki konfiguracyjne powinny teraz mieć.conf
rozszerzenie.Aby rozwiązać ten komunikat w Apache 2.4, musimy utworzyć plik konfiguracyjny w dostępnym katalogu conf. Na przykład
servername.conf
.A w tym musimy tylko dodać jedną linię
Możesz połączyć dwa poprzednie polecenia w jednym z:
Jeśli chcesz użyć nazwy domeny lub jakiejkolwiek innej nazwy, w zależności od wymaganej grzywny, po prostu zamień na
localhost
wszystko, czego potrzebujesz. Następnie musisz włączyć tę konfigurację. W tym celu należy uruchomić następujące polecenie:a2enconf
to komenda umożliwiająca włączenie pliku konfiguracyjnego w Apache 2.4. Zauważ też, żeservername
powyższe polecenie pochodzi od nazwy pliku konfiguracyjnegoservername.conf
. Jeśli twój plik konfiguracyjny byłngenericserver.conf
, to musisz napisaćsudo a2enconf ngenericserver
.Po ponownym załadowaniu serwera powyższa wiadomość nie będzie już powodować błędów.
lub
Teraz zobaczysz, że komunikat nie pojawi się ponownie, a problem zostanie rozwiązany.
źródło
Apache2 może również pobrać nazwę FQDN z poprawnie skonfigurowanej systemowej nazwy hosta, a nie zapisany na stałe w pliku konfiguracyjnym apache. Kodowanie spowoduje również zamieszanie, jeśli nazwa hosta ulegnie zmianie. W rzeczywistości nie potrzebujesz żadnych
ServerName
dyrektywhttpd.conf
ani plików konfiguracyjnych Apache.Wprowadź następujące dane
/etc/hosts
:gdzie
hostname.domainname.com
jest nazwa FQDN twojego komputera.Wraz z odpowiednio skonfigurowaną nazwą hosta w
/etc/hostname/
lub zhostnamectl
, pomoże to również poprawnie działać innym usługom na twoim komputerze (tj. Monit o zalogowanie,This is hostname.domainname.com
zamiastThis is hostname.unknown_domain
.)źródło
[warn] RSA server certificate CommonName (CN) <fqdn> does NOT match server name!?
hostname localhost
byćmyubuntuservername localhost
? Czy dosłowny ciąg znakówhostname localhost
? Twoja odpowiedź nie była jasna127.0.0.1
.Otwórz
/etc/apache2/httpd.conf
plik:Domyślnie byłby pusty. Po prostu dodaj następujący wiersz:
Zapisz plik i wyjdź
Uruchom ponownie serwer
[1] Uruchom domyślny edytor, patrz
sudo update-alternatives --config editor
źródło
W nowej wersji apache2 wystarczy wykonać następujące polecenie:
Dodaj następujący nowy wiersz końca pliku:
Następnie uruchom ponownie Apache2:
Zrobione.
źródło
Uważam, że jest nieco lepiej, aby utworzyć nowy plik
/etc/conf.d
, który do modyfikowania alboapache2.conf
albohttpd.conf
.To osobiste preferencje, które oddzielają moje zmiany konfiguracji od pakietu dystrybucyjnego. Tak więc aktualizacje są mniej skomplikowane.
Tworzę plik,
/etc/apache2/conf.d/AAserverName
który zawiera tylko:Inne sugestie z pewnością również działają.
źródło
W Ubuntu 16.04:
źródło
Dodaj
ServerName localhost
Do
To nie jest błąd ... To tylko przypomnienie od przyjaciela
źródło
ServerName localhost
Sposobem na to jest podanie plików konfiguracyjnych poza sekcjami hosta wirtualnego.Niektóre inne odpowiedzi sugerują, że należy zmodyfikować
/etc/apache2/httpd.conf
. Ten plik zostanie zastąpiony, gdy apache zostanie zaktualizowany z apt. W przypadku konfiguracji Apache, której nie chcesz nadpisywać, powinieneś utworzyć nowy plik. Oto „sposób debiana” na wprowadzenie tej zmiany konfiguracji:Jest to w zasadzie to samo co odpowiedź Starka, ale w łatwej do skopiowania i wklejenia formie skryptu. Pierwotnie opublikowałem to w pytaniu oznaczonym jako duplikat: https://askubuntu.com/a/432408
źródło
W systemie Ubuntu 16.04 :
Dodaj
ServerName localhost
do pliku za pomocąhttpd.conf
następującego polecenia.Następnie dołącz ten wiersz
Include httpd.conf
na końcu tego plikuPonownie sprawdź błędy składniowe
Powinieneś teraz dostać
Teraz możesz ponownie uruchomić serwer z wdziękiem, ponownie ładując konfigurację
lub zabij proces i zacznij od nowa
źródło
Na Ubuntu 11.10 widziałem ten komunikat oraz zawieszenie się systemu, ponieważ mój dysk był pełny. Jeden z plików dziennika stał się nieuczciwy . Prawdopodobnie nie było problemu z Apache, ale ta wiadomość była ostatnią wskazówką, zanim zawiesił się boot.
Aby rozwiązać problem, musiałem uruchomić komputer w trybie odzyskiwania i usunąć niepoprawny plik dziennika.
źródło
Jeśli używasz bash i chcesz minimalnych zależności (i po prostu chcesz mieć jeden wiersz dla skryptu punktu wejścia, jeśli używasz Docker jak ja), te dwie opcje powinny działać.
Jeśli chcesz localhost:
echo "ServerName localhost" >> /etc/apache2/apache2.conf
Jeśli chcesz istniejącą nazwę hosta:
echo "ServerName $(cat /etc/hostname)" >> /etc/apache2/apache2.conf
Wykorzystuje to operatory przekierowania bash, aby dołączyć ciąg na końcu pliku. Echo automatycznie wstawia nową linię, więc wszystko gotowe.
źródło
Uruchom następujące polecenie:
aby określić ścieżkę do
httpd.conf
pliku konfiguracyjnego, edytuj ten plik i odkomentuj / zmodyfikuj wiersz określający wartośćServerName
opcji, np.W przypadku serwera WWW użyj zarejestrowanej nazwy DNS (np
example.com
.).źródło
W systemie Ubuntu 16.04 :
Dodaj
ServerName localhost
do pliku za pomocąhttpd.conf
następującego polecenia.Następnie dołącz ten wiersz
Include httpd.conf
na końcu tego plikuPonownie sprawdź błędy składniowe
Powinieneś teraz dostać
Możesz teraz z powrotem zrestartować serwer, ładując ponownie konfigurację sudo apache2 usługi konfiguracji
źródło