この回答にたどり着いた人は、これは Apache 2.2 に固有のものであることに注意してください。
Apache 2.4 はこれらのディレクティブを廃止しました。
新しい方法は、モジュール mod_authz_host
を使用することです そして Require
ディレクティブ。 (リンク)
Apache 2.4 ですべきこと
<Directory /var/www/ncp-web/>
Require host localhost
Require ip 127.0.0.1
Require ip 192.168
Require ip 10
</Directory>
、すべての Allow ディレクティブを削除します。
簡単。メイン構成または仮想構成内で次のように設定するだけです:
<Directory /var/www/path/to/your/web/documents>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 ::1
Allow from localhost
Allow from 192.168
Allow from 10
Satisfy Any
</Directory>
<Directory></Directory>
ステートメントは基本的に、「このディレクトリ内のすべてのものにこれらのルールを使用してください。そして、/var/www/path/to/your/web/documents
を参照する「このディレクトリ」によって この例で設定しましたが、サイトのローカル ディレクトリ パスに一致するように変更する必要があります。
<Directory></Directory>
内で次へ Allow
のデフォルトの Apache 動作を変更している領域 はすべてデフォルトで Order Deny,Allow
です .次に、 Deny from all
を設定します from は全員からのアクセスを拒否します。それに続くのは Allow from
です 127.0.0.1 ::1
からのアクセスを許可するステートメント (ローカルホストの IP アドレス)、localhost
(ローカルホスト自体)。それはすべて標準的なものです。 localhost
からのアクセス以降 多くの内部システム プロセスに必要です。
以下は、あなたにとって重要なことです。
Allow from
192.168
の場合 10
と同様 これらの番号がプレフィックスとして付けられたネットワーク範囲内の任意/すべてのネットワーク アドレスからのアクセスを許可します。
192.168
を指定することで これは基本的に、ユーザーが 192.168.59.27
のようなアドレスを持っているかどうかを意味します または 192.168.1.123
彼らはウェブサイトを見ることができます。
同様に Allow from
を使用して 10
の場合 プレフィックスは、誰かが 10.0.1.2
の IP アドレスを持っている場合に保証します または 10.90.2.3
彼らはコンテンツを見ることができます。
世界中のほぼすべての内部ネットワークが 192.168
のいずれかを使用しています 範囲または 10
内の何か 範囲。外部には何もありません。したがって、この組み合わせを使用すると、外部世界へのアクセスをブロックするという目標を達成できますが、ローカル ネットワーク内からのアクセスのみを許可できます。
仮想ホスト ディレクティブ内にこのセクションを追加します。
<Location /mypathurl>
Order deny,allow
Deny from all
Allow from 192.168.1.10
</Location>
上記の IP を置き換えます。これは財務レベルのセキュリティには使用しないでください。参考までに。