前提・実現したいこと、発生している問題
Djangoの管理画面にBasic認証をつけたいと思い、
nginxの設定ファイルに
location /admin { Basic認証の設定 } もしくは location ~*/admin { Basic認証の設定 }
のように書いてみましたが、動きませんでした。
※全体の設定(confファイル)は下記になっています
server { listen 80; listen [::]:80; server_name ドメイン名; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name ドメイン名; #ssl on; ssl_certificate (SSL設定); ssl_certificate_key (SSL設定); location /static { alias /usr/share/nginx/html/static; } location /media { alias /usr/share/nginx/html/media; } location / { proxy_pass http://127.0.0.1:8000; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_set_header X-Forwarded-Proto $scheme; } location ~*/admin { proxy_pass http://127.0.0.1:8000; auth_basic "auth basic"; auth_basic_user_file (httpasswdの場所); } }
adminは実在するディレクトリではなかったり、Djangoの仕様(?)でつけることができないのでしょうか。
もし、実在しないディレクトリに対してBasic認証、もしくはIPアドレス制限をつけることができる書き方(正規表現)がありましたら、教えていただけましたら幸いです。
(IPアドレスの方は、adminディレクトリを指定できればBasic認証の部分をIPアドレス制限の書き方に変更
すればできないかと思っています)
###補足情報(FW/ツールのバージョンなど)
さくらVPS
Cent OS7
nginx
Python
回答1件
あなたの回答
tips
プレビュー