LoginSignup
2
2

More than 3 years have passed since last update.

Apache 2.4 で使える If 文

Last updated at Posted at 2020-06-04

Apache 2.4 では If 文 が使え、 特定のドメインの時に処理をするようなことができます。

<If "%{HTTP_HOST} == 'www.dev.sample.com'">
  AuthUserFile /dir/file
  AuthGroupFile /dev/nul/.htpasswd
  AuthName "input your id and passwd"
  AuthType Basic
  require valid-user
</If>

条件には == を使っていますが、そのほかにもシェルスクリプトと同じような比較も可能です。

  • 文字列の比較
    • !=: 不一致
    • >, <, <=, >=: 大小比較
    • =~: 正規表現の一致
  • 整数の比較
    • -eq: 等しい
    • -ne: 等しくない
    • -lt: 小さい
    • -le: 小さいまたは等しい
    • -gt: 大きい
    • -ge: 大きいまたは等しい
  • その他
    • -z: 文字列長がゼロ
    • -n: 文字列長が1以上
    • -f: ファイルが存在する
    • -d: ディレクトリが存在する
    • in: 含まれる

特に便利なのは =~ による正規表現との比較です。

<If "%{HTTP_HOST} =~ /user.test.sample.com$/" >

If のほかに ElseIf, Else も使えます。

さらに詳しいことは

次のページをご覧ください。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2