3
我試圖設置基本的HTTP身份驗證與多層Nginx。我想爲整個網站提供一個用戶名&,除了某個子目錄(URL)和該子目錄的一個單獨的用戶名密碼&。如果有人導航到該子目錄,我希望僅提示它們提供子目錄特定的憑據,而不是用於站點根目錄的憑據。Nginx密碼保護根目錄,併爲子目錄分開密碼
我該如何設置?
我試圖設置基本的HTTP身份驗證與多層Nginx。我想爲整個網站提供一個用戶名&,除了某個子目錄(URL)和該子目錄的一個單獨的用戶名密碼&。如果有人導航到該子目錄,我希望僅提示它們提供子目錄特定的憑據,而不是用於站點根目錄的憑據。Nginx密碼保護根目錄,併爲子目錄分開密碼
我該如何設置?
參考:http://nginx.org/en/docs/http/ngx_http_auth_basic_module.html
假設子目錄網址是http://www.example.com/admin/。
步驟1:創建2個文件中存儲的用戶名/密碼(加密的)對使用htpasswd
# to secure the admin site
htpasswd -bc /tmp/admin_passwd.txt admin adminpassword
# to secure the main site
htpasswd -bc /tmp/site_passwd.txt user userpassword
步驟2:設置你的nginx配置:
server {
listen 80;
server_name www.example.com;
root /tmp/www;
location ^~ /admin/ {
auth_basic "secured site admin";
auth_basic_user_file /tmp/admin_passwd.txt;
}
location/{
auth_basic "secured site";
auth_basic_user_file /tmp/site_passwd.txt;
}
}