
私たちはローカルでウェブサイトをホストします。これには、パブリックIPと対応するDNSエントリがあります。私たちはApache 2.4 Webサーバーを使用しています。このウェブサイトは何の問題もなく公的にアクセス可能です。ただし、認定IPを証明してウェブサイトを評価することもできます。
自分のウェブサイトへのIPベースの公開アクセスを防ぐにはどうすればよいですか? Apache(仮想ホスト)設定を更新する必要がありますか、それともどこで処理する必要がありますか?
Apacheでクライアント(IP)を制限する方法を知っていますが、状況はまったく異なります。
更新:例えば、https://www.contoso.com/可能でなければなりませんが、https://203.0.113.66/だからではありません。これが私が望むものです
答え1
Apache設定でデフォルトの仮想ホストを定義する必要があります。次に、Web サイトを検索する DNS 名とともに ServerName を使用して仮想ホストを定義します。
ホストヘッダーに対応する名前を持つ要求は対応する仮想ホストによって処理され、他の要求(無効なホスト名があるかホスト名がない)はデフォルトの仮想ホスト(無効なホストが指定されたことを示すページである可能性があります)によって処理されます。になります。使用)または類似)。
SSL(https)を使用している場合、ホスト名(この場合はIPアドレス)がSSL証明書のホスト名と一致しないため、IPアドレスに対する要求はとにかくSSLエラーを受け取ります。
答え2
Ubuntu 18.04、Apache 2.4.29を使用します。
Apache2にはデフォルトのvHostがあると思います000-default.conf
。 IP経由でサイトにアクセスできる場合は、このデフォルト設定を無効にした可能性があります。
解決策:
そこにリダイレクトを編集し000-default.conf
て入れてください。
nano /etc/apache2/sites-available/000-default.conf
存在する000-default.conf
<VirtualHost *:80> Redirect / https://www.contoso.com/ </VirtualHost> <VirtualHost *:443> Redirect / https://www.contoso.com/ </VirtualHost>
必要に応じて設定を有効にします。
a2ensite 000-default.conf
Apache2を再ロードします。
systemctl reload apache2.service
お役に立てば幸いです。