Apache2.4でのアクセス制限の書き方

Apache2.4では2.2で使っていたOrder allow,denyなどの記述が変更され、新しい書き方になったみたいです。ということで、その書き方を調べてみました。

アクセス制限の書き方

mod_authz_coreを使ったアクセス制限の書き方

全てのアクセスを許可する

<Directory "/admin">
  Require all granted
</Directory>

従来の書き方

<Directory "/admin">
  Order allow,deny
  Allow from all
</Directory>

全てのアクセスを拒否する

<Directory "/admin">
  Require all denied
</Directory>

従来の書き方

<Directory "/admin">
  Order allow,deny
  Deny from all
</Directory>

特定のIPのみアクセスを許可する

<Directory "/admin">
  Require ip 123.456.789.012
</Directory>

従来の書き方

<Directory "/admin">
  Order deny,allow
  Deny from all
  Allow from 123.456.789.012
</Directory>

特定の環境変数がある場合のみアクセスを許可する

<Directory "/admin">
  Require env value
</Directory>

従来の書き方

<Directory "/admin">
  Order deny,allow
  Deny from all
  Allow from env=value
</Directory>

リンク

mod_authz_core – Apache HTTP Server Version 2.4
http://httpd.apache.org/docs/current/mod/mod_authz_core.html

Upgrading to 2.4 from 2.2 – Apache HTTP Server Version 2.4
http://httpd.apache.org/docs/2.4/upgrading.html

関連記事

htaccessとhtpasswdを使ったBasic認証の設定
Basic認証は安全性に問題があり本格的に使うことは稀と思いますが、簡単に設置できるので簡易的なアクセス管理に便利です。 .htpasswdの作成 SSHなどで設置先のサーバーにログインできるという前提で説明します。 SSHでログインできない場合は、ローカルPCなどで.htpasswdを作成してアップロードすることになります。注 新規作成 以下はlolipopという...

htaccessでwwwのアリとナシで統一
wwwアリで統一する場合 RewriteEngine on RewriteCond %{HTTP_HOST} ^example\.com$ RewriteRule (.*) http://www.example.com/$1 [R=301,L] wwwナシで統一する場合 RewriteEngine on RewriteCond %{HTTP_HOST} ^www.exa...

Access-Control-Allow-Origin
設置したCGIを違うドメインからでも使えるようにしたい場合は、HTTPヘッダーにAccess-Control-Allow-Originを追加するとできるようになるそうです。 CGI側でヘッダーを追加する場合 次のような感じでHTTPヘッダーを追加します。 print('Access-Control-Allow-Origin: *') print('Content-Type: t...

コメントを残す

メールアドレスが公開されることはありません。