OS Xでこのメッセージを抑制するために「ServerName」ディレクティブをグローバルに設定する方法

OS Xでこのメッセージを抑制するために「ServerName」ディレクティブをグローバルに設定する方法

Apache を起動するとこのエラー メッセージが表示されます。macOS Mojave 10.14.5 を使用しています。

AH00558: httpd: Stevens-MacBook-Air.local を使用して、サーバーの完全修飾ドメイン名を確実に特定できませんでした。このメッセージを抑制するには、グローバルに 'ServerName' ディレクティブを設定してください。httpd (pid 856) はすでに実行されています

ファイルにネームサーバーを追加しましたhttpd.confが、それでもこのエラー メッセージが表示されます。

# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80
#ServerName localhost:8080

このメッセージがまだ表示されるのは、何を見逃しているからでしょうか?

答え1

httpd.conf ファイルにネーム サーバーを追加しましたが、それでもこのエラー メッセージが表示されます。

残念ですが、そうではありません。実質的には次のようになります:

# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80
#ServerName localhost:8080

上記のすべての行が先頭に追加され#ServerName localhost:8080ていることに注目してください#。つまり、コメント アウトされているということです。設定ファイルを見回すと、コメント アウトされている行だけでなく、コメントされている行もいくつかあります。設定を有効にするには、次のようにコメントを解除する必要があります。

# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80
ServerName localhost:8080

http://localhost:8080その後、Apache を再起動すると、期待どおりに Apache サーバーにアクセスできるようになります。

答え2

Apache 設定に完全修飾ホスト名の行を追加します。

LINE='ServerName www.example.com'
FILE='/etc/apache2/apache2.conf'
grep -qF -- "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
service apache2 restart

サーバーにドメインがない場合は、localhost代わりに

関連情報