コマンドを使用してApacheサーバーを再起動すると
sudo /etc/init.d/apache2 restart私は次のエラーが表示されます:
Restarting web server apache2apache2: 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サーバーは127.0.0.1の代わりに127.0.1.1を使用していますか? このエラーの原因は何ですか?
Maxx
July 6, 2022, 5:54am
2
13.04歳以上 これは単なる友好的な警告であり、実際には問題ではありません(何かが機能しないという点で)。
あなたがに行く場合:
/etc/apache2/apache2.confと挿入:
ServerName localhost そして、ターミナルに入力してapacheを再起動します:
sudo systemctl reload apache2通知は表示されなくなります。
あなたが中に名前を持っている場合 /etc/hostname 代わりにその名前を使用することもできます localhost.
そしてそれは使用します 127.0.1.1 それがあなたの中にあれば /etc/hosts:
127.0.0.1 localhost127.0.1.1 myhostname好ましい方法
Apacheのトラブルシューティング
このエラーが発生した場合:
apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName次に、コマンドラインで"sudo nano"などのテキストエディタを使用するか、デスクトップで"gksudo gedit"などを使用して新しいファイルを作成します,
sudo nano /etc/apache2/conf.d/fqdnまたは
gksu "gedit /etc/apache2/conf.d/fqdn"次に追加します
ServerName localhostファイルに保存します。 これはすべて、次のコマンドを使用して単一のコマンドで行うことができます:
echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdnしかし、Ubuntu14.04では:
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf sudo a2enconf fqdn忘れてはいけない"。conf"(なしでは動作しません).
13.10以降 Apache2.4(デフォルトでは13.10)では、設定ファイルを追加する方法を使用することはできません。 conf.d ディレクトリ。
Apacheは、もはや使用していません conf.d ディレクトリ。 すべての設定ファイルは内部に格納されます /etc/apache2/conf-available ディレクトリとすべての設定ファイルには、次のようなものがあります。 .conf 拡張子。
Apache2.4でこのメッセージを解決するには、conf-availableディレクトリ内に設定ファイルを作成する必要があります。 例えば servername.conf.
sudo vi /etc/apache2/conf-available/servername.confそして、この中に私たちはただ一つの行を追加する必要があります
ServerName localhost前の2つのコマンドを1つにまとめることができます。:
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf要件に応じてドメイン名またはその他の名前を使用する場合は、置き換えてください localhost あなたが必要とするものは何でも。 次に、この設定を有効にする必要があります。 このためには、次のコマンドを実行する必要があります:
sudo a2enconf servernamea2enconf Apaches2.4で設定ファイルを有効にするコマンドです。 また、それに注意してください servername 上記のコマンドでは、設定ファイルの名前からです servername.conf. 設定ファイルが次のようになっている場合は、 ngenericserver.conf 次に、次のように書く必要があります sudo a2enconf ngenericserver.
この後、サーバーをリロードし、上記のメッセージはもはやあなたをバグにしません。
sudo service apache2 reloadまたは
sudo apache2ctl gracefulこの後、メッセージが再び表示されず、問題が修正されることがわかります。
Ali
July 6, 2022, 6:11am
4
Apache2は、apacheの設定ファイルにハードコードされるのではなく、適切に設定されたシステムのホスト名からFQDNを取得することもできます。 ハードコーディングすると、ホスト名が変更された場合にも混乱が発生します。 あなたは実際には何も必要ありません ServerName でのディレクティブ httpd.conf または任意のapache設定ファイル。
以下を入れて /etc/hosts:
# IPv4 and IPv6 localhost aliases127.0.0.1 hostname.domainname.com hostname localhost::1 hostname.domainname.com hostname localhostどこで hostname.domainname.com マシンのFQDNです。
で適切に設定されたホスト名と一緒に /etc/hostname/ またはと hostnamectl、これはまた、あなたのマシン上の他のサービスが適切に実行されるのに役立ちます(すなわち、ログインプロンプト This is hostname.domainname.com の代わりに This is hostname.unknown_domain.)
ターミナルを開く
を開きます。 /etc/apache2/httpd.conf ファイル:
sudo editor /etc/apache2/httpd.conf # [1]
デフォルトでは、空白になります。 次の行を追加するだけです:
ServerName localhost
ファイルを保存して終了します
サーバーを再起動します
sudo service apache2 restart
[1]デフォルトエディタを起動します。 sudo update-alternatives --config editor
Apache2の新しいバージョンでは、次のようなコマンドを実行します:
sudo nano /etc/apache2/apache2.confファイルの次の新しい行末を追加します:
ServerName localhostその後、apache2を再起動します:
sudo service apache2 restart終わった
私はそれが新しいファイルを作成する方が少し良いことがわかります /etc/conf.d それはどちらかを変更するには apache2.conf または httpd.conf.
これは、私の設定の変更を配布パッケージから分離したままにする個人的な好みです。 だから、更新はあまり複雑ではありません。
私はファイルを作成します /etc/apache2/conf.d/AAserverName そしてそれはだけ含んでいます:
ServerName myhost.mycomain.tld他の提案は確かにまた働く。
Ubuntu16.04では:
sudo -iecho 'ServerName localhost' > /etc/apache2/conf-available/server-name.confa2enconf server-name
オン 16.04 :
追加 ServerName localhost ファイルに httpd.conf usin g次のコマンド。
sudo vi /etc/apache2/httpd.conf次に、この行を含めます Include httpd.conf このファイルの最後に
sudo vi /etc/apache2/apache2.conf構文エラーを再度チェックする
sudo apache2ctl configtestあなたは今取得する必要があります
Syntax OKこれで、構成を再読み込みすることで、サーバーを正常に再起動できます
sudo service apache2 reloadまたは、プロセスを強制終了して再度開始します
sudo service apache2 restart
追加 ServerName localhost
に
sudo leafpad /etc/apache2/apache2.conf sudo leafpad /etc/apache2/httpd.confそれはエラーではありません。. それはちょうど友人のリマインダーです
Ollie
July 6, 2022, 7:13am
11
を指定します。 ServerName localhost 仮想ホストセクションの外にある設定ファイルでこれを行う方法があります。
その他の回答することをお勧修正 /etc/apache2/httpd.conf. このファイルは、apacheがaptからアップグレードされると上書きされます。 上書きしたくないApache設定の場合は、新しいファイルを作成する必要があります。 この設定を変更するための「Debianの方法」は次のとおりです:
# create the configuration file in the "available" sectionecho "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf# enable it by creating a symlink to it from the "enabled" sectionsudo a2enconf servername# restart the serversudo service apache2 restartこれは基本的にStarkの答えと同じですが、スクリプト形式をコピーして貼り付けるのは簡単です。 私はもともと重複としてマークされた質問でこれを投稿していました: https://askubuntu.com/a/432408