ApacheのHTTPサービス

1. <のIfModuleディレクトリモジュール>
  決意結果が実行された場合にのみ、コンテナ内の命令が真となると言うことです。<のIfModuleディレクトリモジュールは>モジュールに作用する、それが最初のロードモジュールかどうかを決定し、処理するかどうかを決定し、 falseの場合は代わりに、それはすべて無視されます。<のIfModuleモジュール名>または<のIfModule!モジュール名>モジュールがロードするかどうかを判断し使用することができます。
例1:
この例では、<のIfModule> dir_module判定する命令が実行された場合に負荷が、のDirectoryIndexがindex.htmlをロードするかどうか。
ここに画像を挿入説明
例2:

<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
	User daemon
	Group daemon
< /IfModule>
< /IfModule>

上記の例では、<のIfModule>はコンテナが最初にロードされるmpm_netware_moduleモジュールが、ロードされていない場合、次の容器に進行するか否かが決定されるか否かを判定するロードされたモジュールmpm_winnt_module、無負荷mpm_winnt_module、<のIfModule>が存在しない場合ユーザおよびグループの指示は、容器内で実行されます。
2. <IfDefine>コンテナ

<IfDefine>コンテナ<のIfModule>類似した容器、裁判官への条件のすべてが、<IfDefine>コンテナは、条件がtrueの場合にのみ実行されますが、それはまた、開始のhttpdでプレーするために特定のパラメータを追加する必要があります効果。

< IfDefine  Proxy>
	LoadModule  proxy_module  modules/libproxy.so
< /IfDefine>

上記のコマンドに次のようになります開始のhttpd声明で効果を取ることです:
httpdの-Dプロキシ

<IfDefine !Proxy>
	LoadModule proxy_module  modules/libproxy.so
</IfDefine>

httpdの-Dプロキシ

この例では、<IfDefine!プロキシ>コンテナ!プロキシは、それが前の例に完全に反しているので、コンテナ内の<IfDefine!プロキシ>設定は無視され、より多くの「!」よりも前のと比較しました。

  1. <ディレクトリ>と<DirectoryMatch>コンテナ

<ディレクトリ>役割のコンテナは、それが指定されたディレクトリとそのサブディレクトリ内の命令パッケージを動作させるためにある、ディレクトリは完全なパスでなければなりませんが、もちろん、あなたが「*」ワイルドカードを使用することができますが、「?」、ディレクトリにマッチします「/」「[]」と一致しないことができます。また、文字の範囲を決定するために、「[]」を使用することができますが、それがあるかどうか、「*」、「?」、または
たとえば、<はディレクトリ/ SRV / * /html/index.html >はできません試合の<Directory / SRV / * /index.htmlが> 、 そして唯一の一致<ディレクトリ/srv/apache/html/index.html>または<ディレクトリ/srv/username/html/index.html>。

<Directory /srv/apache/html/>
	Order Deny,Allow	
	Deny from All
</Directory>

上記の例では、/ SRV / apacheの/ HTML /ディレクトリへのアクセスを禁止し、への要求/ SRV / apacheの/ HTML /リンクは拒否されます。

上記とワイルドカードに加えて、「[]」、また、例えば、正規表現マッチングを使用する「〜」前の正規表現を追加することによって:

<Directory  ~"^/srv/apache[0-9]{2}/html/">
	Order Deny,Allow
	Allow from All
</Directory>

上記の例では、ディレクトリ/ SRV / / HTML /ディレクトリの終わりに0-9まで全てのapacheで始まる2桁の番号と一致する正規表現の使用やディレクトリで、任意のユーザがコンテナへのアクセスを許可しますURLリクエストには、以下のリンクのようになります。

<DirectoryMatch>と同様の効果コンテナの<Directory>コンテナは、ディレクトリに適用されますが、<DirectoryMatch>コンテナは、たとえば、「〜」追加することなく、正規表現を受け入れることができます。

<DirectoryMatch "^/srv/apache[0-9]{2}/html/">
	Order Deny,Allow
	Allow from All
</DirectoryMatch>
  1. <ファイル>と<FilesMatch>を使う方のコンテナ

そして、<ディレクトリ>ディレクトリに対応するコンテナに作用する、<ファイル>コンテナドキュメント上でのみ動作し、かつワイルドカードと「[]」前で、正の表現を追加し、「〜」を使用すると、<ディレクトリ>コンテナ、正規表現の一致するファイル。例えば、試合終了拡張子を持つすべての.htmlファイルでは、すべてのユーザーがアクセスできるように:

<Files "^\.html">
	Order Deny,Allow
	Allow from All
</Files>

<FilesMatch>を使う方のコンテナ<ファイル>は、容器等が挙げられるが、その<ファイル>コンテナの機能に加えて、だけでなく、正規表現のマッチングとして使用することができます。

公開された17元の記事 ウォンの賞賛2 ビュー368

おすすめ

転載: blog.csdn.net/qq_44487069/article/details/104539918