コマンドを使用して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 servername
a2enconf
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
Harley
July 6, 2022, 6:56am
#9
オン 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