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

回答編集履歴

1

nginxのconf記入内容について追記

2018/05/20 08:10

投稿

belgh
belgh

スコア27

answer CHANGED
@@ -28,6 +28,25 @@
28
28
  [http://www.dummy.net/.well-known/acme-challenge/SIqU8-wiN-yA4Vc39ArEUpHqyBamFQgc6o8xcKNnFvI]
29
29
 
30
30
  keyがkey形式ですら無くURLになってしまっていました。
31
- certbotがなにか処理をしているのでしょうが、nginxからcertbotにリバースプロキシ的に処理を渡せ記法いいんでしょうが…
31
+ 多分certbotがなにか処理をしており、nginxでreturnすとそれ行わのだと思ます
32
32
 
33
+ ### 上記を踏まえたconfの修正内容
34
+ ```nginx
35
+ location ^~ /.well-known/acme-challenge/ { # 1
36
+ allow all; # 2
37
+ default_type text/plain; # 3
38
+ root /srv/www/www.dummy.net/;
39
+ }
40
+ location / { # 4
41
+ root /srv/www/www.dummy.net/static/;
42
+ return 301 https://$host$request_uri;
43
+ }
44
+ ```
45
+
46
+ 0. 「/.well-known/acme-challenge/」のパターンマッチ演算子は「^~」とする。
47
+ 「^~」は最優先で判定され、マッチすると他のパターンマッチは行われない。
48
+ 1. Let's encryptのサーバは海外なので、海外IPを弾く設定をしている場合に必要。
33
- 解決済にしてコメントできるのかわかりませんが、ご存知方がたら教えてさい。
49
+ 2. すませんよくわかりません…。参考サイト見ておまじな。わかる方教えてください。
50
+ 3. 「httpにアクセスされたらhttpsに転送する」処理。
51
+ 修正前はlocation未指定で書いていたが、「/」のパターンマッチ内とするとこで、「^~」との振り分けができる。
52
+ これで1と合わせて、certbot認証時のみリダイレクトされなくなる。