「設定 - .htaccess」の版間の差分

ナビゲーションに移動 検索に移動
179行目: 179行目:
<br>
<br>
  <syntaxhighlight lang="apache">
  <syntaxhighlight lang="apache">
  例: HTTPホストが"www.example.com"の場合に条件が真になる
  # 例: HTTPホストが"www.example.com"の場合に条件が真になる
  RewriteCond %{HTTP_HOST} ^www\.example\.com$
  RewriteCond %{HTTP_HOST} ^www\.example\.com$
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
複数の<code>RewriteCond</code>ディレクティブが連続して記述されている場合、それらは暗黙的にAND条件として扱われる。<br>
<syntaxhighlight lang="apache">
# 例: リモートホストに".example.com"で終わる文字列が含まれており、かつ、".osk[0-9]."という文字列が含まれていない場合はアクセスを許可
RewriteCond %{REMOTE_HOST} \.example\.com$ [NC]
RewriteCond %{REMOTE_HOST} !\.osk[0-9]\.  [NC]
RewriteRule ^ - [L]
</syntaxhighlight>
<br>
もし、OR条件にしたい場合は、<code>[OR]</code>フラグを使用して明示的に指定する必要がある。<br>
<syntaxhighlight lang="apache">
# 例: リモートホストに".example.com"で終わる文字列が含まれている場合、または、".osk[0-9]."という文字列が含まれていない場合はアクセスを許可
RewriteCond %{REMOTE_HOST} \.example\.com$ [NC,OR]
RewriteCond %{REMOTE_HOST} !\.osk[0-9]\.  [NC]
RewriteRule ^ - [L]
</syntaxhighlight>
<br>
==== RewriteRuleディレクティブ ====
==== RewriteRuleディレクティブ ====
<code>RewriteCond</code>の設定を適用する。<br>
<code>RewriteCond</code>の設定を適用する。<br>

案内メニュー