質問編集履歴

5

タイトルの修正

2016/10/17 02:39

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- Apache2.2で有効だったACLがApache2.4では有効化されない
1
+ Apache2.2で有効だったACLがApache2.4で無視され
test CHANGED
File without changes

4

タイトル修正

2016/10/17 02:39

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- あいApache2.2で有効だったACLがApache2.4では有効化されない
1
+ Apache2.2で有効だったACLがApache2.4では有効化されない
test CHANGED
File without changes

3

タイトルの改善

2016/10/17 02:21

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- Apache2.4にてRequireよりもRewriteRuleが優先され
1
+ あいApache2.2で有効だったACLがApache2.4では有効化されない
test CHANGED
File without changes

2

誤記修正

2016/10/17 02:17

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,16 +1,12 @@
1
1
  ###前提・実現したいこと
2
2
 
3
- 最終的にやりたいことは「特定のIPからのアクセスだけ403にせずリライトする」ですが、事象解説のため簡略した例で説明させていただきます。
3
+ 最終的にやりたいことは「特定のIPからのアクセスだけ403にせずリライトする」ですが、事象解説のため簡略例で説明させていただきます。
4
4
 
5
5
 
6
6
 
7
- 例として httpd.conf に後述の Deny(for Apa2.2) または Require(for Apa2.4)設定を記載してアクセスをACLで全て拒否しているとします。
7
+ httpd.conf に対して、後述の Deny(for Apa2.2) または Require(for Apa2.4)設定を記載して、上位ディレクトリレベルで全てのアクセスをACLで拒否しています。
8
8
 
9
- この状態でApache2.4にRewriteRule設定を入れも、ACLでの全拒否状態維持されることを期待しています。
9
+ この状態でRewriteRule設定を入れた場合でも、ACLが有効化されたままで403エラーとなることを実現たいと考えています。
10
-
11
-
12
-
13
- 後述のConf設定の場合、ApacheのDirectory仕様ではディレクトリの階層が上のほうから処理されるため、ACLが有効化されて403エラーになるはずです。
14
10
 
15
11
 
16
12
 
@@ -35,6 +31,8 @@
35
31
  リライトが機能してgoogleへ302リダイレクトされてしまいます。
36
32
 
37
33
  ・つまり2.2とは逆で、ACL設定よりもRewriteRuleの設定が優先されているように見えます。
34
+
35
+ ・ApacheのDirectory仕様ではディレクトリの階層が上のほうから処理されるため、本来であればACL設定が効いて403エラーとなるはずです。
38
36
 
39
37
 
40
38
 

1

一部不明瞭な記述があったため、見直しました。

2016/10/14 09:51

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,32 +1,30 @@
1
- ※最終的にやりたいことは「特定のIPからのアクセスだけ403にせずリライトする」ですが、
1
+ ###前提・実現したいこと
2
2
 
3
- 事象説のため、わかりやすい例として内容を大幅に素化して記載しています
3
+ 最終的にやりたいことは「特定のIPからのアクセスだけ403にせずリライトする」ですが、事象説のため、簡た例で説明させていただきます
4
4
 
5
5
 
6
6
 
7
- ###前提・実現したい
7
+ 例とて httpd.conf に後述の Deny(for Apa2.2) まは Require(for Apa2.4)設定を記載してアクセスをACLで全て拒否してします。
8
8
 
9
- 例として httpd.conf 後述の設定を記載しアクセスを拒否しています。
9
+ この状態でApache2.4RewriteRule設定を入れも、ACLでの全拒否状態が維持されることを期待しています。
10
10
 
11
+
12
+
11
- Apache2.4にRewriteRule設定を入れたところRequireによるアクセス制御(ACL設定)が効い事象が発生しました
13
+ 後述のConf設定の場合、ApacheのDirectory仕様ではディレクトリの階層が上のほうから処理さ、ACLが化されて403エラーにるはずです
12
14
 
13
15
 
14
16
 
15
17
  ###発生している問題・エラーメッセージ
16
18
 
17
- 想定される動作
19
+ 結果
18
20
 
19
- Apacheの仕様ではディレクトリの階層が上のほうから処理されるため
20
-
21
- ACLが有効化されて403エーになるはずです。
21
+ ウザからアクセスした結果、
22
-
23
-
24
-
25
- <結果>
26
22
 
27
23
  ・Apache2.2では403エラー(正常にACLが効いている)
28
24
 
29
- ・Apache2.4では302でリダイレクト(ACLが効いていない)
25
+ ・Apache2.4では302でリダイレクトでgoogleに飛ばされる(ACLが効いていない)
26
+
27
+ となりました。
30
28
 
31
29
 
32
30
 
@@ -36,7 +34,7 @@
36
34
 
37
35
  リライトが機能してgoogleへ302リダイレクトされてしまいます。
38
36
 
39
- ・つまりACLの記述よりもRewriteRuleの読み込みが優先されているように見えます。
37
+ ・つまり2.2とは逆で、ACL設定よりもRewriteRuleの設定が優先されているように見えます。
40
38
 
41
39
 
42
40
 
@@ -106,6 +104,14 @@
106
104
 
107
105
  Web上にも同様の知見がなく、1日中Confをいろいろ変更して試してみたのですが解決していない状況です。
108
106
 
107
+ ・<Location />
108
+
109
+ Require all denied
110
+
111
+ </Location>
112
+
113
+ でも結果は同じでした(2.2は403で、2.4は302)。
114
+
109
115
  ・RHバンドル版ではなくソースコンパイル版のApacheですので、RH社への問い合わせができず、自己解決するしかない状況です。
110
116
 
111
117
  お力添えいただけますと幸甚です。