teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

追記

2018/12/04 05:21

投稿

taka-saan
taka-saan

スコア665

answer CHANGED
@@ -42,4 +42,8 @@
42
42
  この場合apacheの設定を変えても許可(解除)できません。
43
43
 
44
44
  nginx側の設定を変更することになりますが、まずは環境や構成を確認し、
45
- どのnginxを経由しているのか特定してください。
45
+ どのnginxを経由しているのか特定してください。
46
+
47
+ 特定出来たら、設定してください。
48
+ [nginxで特定ディレクトリをBasic認証から除外する方法](https://qiita.com/minodisk/items/90c6d6cd8f16c34ac10b)
49
+ [Nginx で Basic 認証](https://qiita.com/kotarella1110/items/be76b17cdbe61ff7b5ca)

2

追記

2018/12/04 05:21

投稿

taka-saan
taka-saan

スコア665

answer CHANGED
@@ -26,4 +26,20 @@
26
26
  http://xxx.xxx.com/aaa/bbb/b.html
27
27
  をリクエストして確認するとどうなりますでしょうか?
28
28
 
29
- ブラウザにb.htmlの内容が表示されるか、そうでない場合は表示されたエラーの内容を「できませんでした」ではなく正しく教えてください。(エラー内容をコピペするなど)
29
+ ブラウザにb.htmlの内容が表示されるか、そうでない場合は表示されたエラーの内容を「できませんでした」ではなく正しく教えてください。(エラー内容をコピペするなど)
30
+
31
+ ---
32
+
33
+ > 401 Authorization Required
34
+ > nginx
35
+ >
36
+ > 上記が表示されます。
37
+
38
+
39
+ なるほど。
40
+ 質問者さんの環境は、nginxをプロキシ(リバースプロキシ)にしてその配下にapacheがあるのですね。
41
+ ベーシック認証はnginx側で掛かっていると思われ、
42
+ この場合apacheの設定を変えても許可(解除)できません。
43
+
44
+ nginx側の設定を変更することになりますが、まずは環境や構成を確認し、
45
+ どのnginxを経由しているのか特定してください。

1

追記

2018/12/04 04:18

投稿

taka-saan
taka-saan

スコア665

answer CHANGED
@@ -1,2 +1,29 @@
1
1
  認証解除したいurlを踏むとリダイレクトやrewriteで別のディレクトリに飛ばされるようになっていませんか?
2
- だとすると、飛び先の場所でも解除が必要です。
2
+ だとすると、飛び先の場所でも解除が必要です。
3
+
4
+ ---
5
+ QAを読んで追記
6
+
7
+ 失礼ながら、確認方法がよくないことを疑っています。
8
+
9
+ http://xxx.xxx.com/aaa/bbb
10
+
11
+ というディレクトリ配下だけを認証解除したいとします。
12
+ bbbディレクトリの中に、下記の.htaccessを置きました。
13
+ ```
14
+ Satisfy any
15
+ order allow,deny
16
+ allow from all
17
+ ```
18
+ でも、bbbの下にはコンテンツがありません。
19
+ という場合、http://xxx.xxx.com/aaa/bbb で確認しても正しい確認になりません。
20
+ `Options -Indexes` かつ `DirectoryIndex` のファイルがないとき、
21
+ http://xxx.xxx.com/aaa/bbb は
22
+ http://xxx.xxx.com/aaa の bbbというファイル
23
+ という解釈になり、bbbではなく aaa の設定が適用されるからです。
24
+
25
+ ですから、bbbの下に、b.htmlを試しに置いたうえで、
26
+ http://xxx.xxx.com/aaa/bbb/b.html
27
+ をリクエストして確認するとどうなりますでしょうか?
28
+
29
+ ブラウザにb.htmlの内容が表示されるか、そうでない場合は表示されたエラーの内容を「できませんでした」ではなく正しく教えてください。(エラー内容をコピペするなど)