Nginx開啓http基本認證

Nginx中的ngx_http_auth_basic_module模塊容許經過驗證用戶名和密碼對資源進行訪問控制,默認狀況下nginx已經安裝了ngx_http_auth_basic_module模塊,若是不須要這個模塊,能夠在編譯時加上 --without-http_auth_basic_modulehtml

 

nginx basic auth指令nginx


語法:    auth_basic string | off;
默認值:  auth_basic off;
配置段:  http, server, location, limit_except
默認表示不開啓認證,後面若是跟上字符,這些字符會在彈窗中顯示。app


語法:     auth_basic_user_file file;
默認值:    —
配置段:   http, server, location, limit_except
指定一個文件,保存用戶名和密碼,文件內容格式:用戶名:加密後的密碼ide

 

配置實例:加密

nginx中增長配置:.net

 server {
        listen 80;
        server_name  www.yujia.com yujia.com;
        root         /app/html/www;
        index        index.html;
        auth_basic "secret";
        auth_basic_user_file /usr/local/nginx/passwd.db;
            }
server

生成密碼,能夠使用htpasswd或openssl:htm

方法一:htpasswd -cb  /usr/local/nginx/passwd.db yujia 123456  第一次添加的時候能夠使用-c生成密碼文件,第二次添加用戶密碼的時候千萬不要使用-c參數,使用-b便可,不然會覆蓋原來的密碼文件,再建立一個新的密碼文件ssl

方法二:echo "yujia:$(openssl passwd -crypt 123456)" >> /usr/local/nginx/passwd.db資源

若是兩個命令都沒有,也可以使用http://tool.oschina.net/htpasswd在線生成

 

重啓nginx生效:nginx -s reload

相關文章
相關標籤/搜索