2016年5月19日 星期四

Nginx 使用 Basic Auth (HTTP Basic Authentication)

  1. 先使用 htpasswd 建立帳號密碼檔
    (下例建立帳號名稱為 userA)
    $ htpasswd -c /home/.htpasswd userA
    
  2. 修改 nginx 網站設定檔
    location / {
        #auth_basic 訊息字串 或 off
        auth_basic "Basic Auth";
        auth_basic_user_file "/home/.htpasswd";
    }
    
  3. 重新讀取設定檔
    $ systemctl reload nginx.service



參考:
CentOS 7 : Nginx : Enable Basic Auth : Server World
Module ngx_http_auth_basic_module
nginx配置location总结及rewrite规则写法 | Sean's Notes


其他:
不能直接使用 if 判斷來決定要不要執行 auth_basic "Basic Auth" 這一行。
NGINX - auth basic if $arg contains 'admin' - Stack Overflow
drupal - Nginx config: how to use auth_basic authentication if ssl_client_certificate none provided? - Stack Overflow

沒有留言:

張貼留言