在使用nginx轉發的時候,要進行一次使用者身份的确認。
1)通過htpasswd指令生成使用者名及對應密碼資料庫檔案
[root@localhost]# htpasswd -c /usr/local/nginx/passwd.db zutnlp //建立認證資訊,zutnlp 為認證使用者名
New password: ******* //輸入認證密碼
Re-type new password: ******** //再次輸入認證密碼
Adding password for user zutnlp
[root@localhost]# chmod 755 /usr/local/nginx/passwd.db //修改網站認證資料庫權限
[root@localhost]# chown root:root /usr/local/nginx/passwd.db //修改網站認證資料庫屬主和屬組
[root@localhost]# cat /usr/local/nginx/passwd.db //可以看到通過htpasswd生成的密碼為加密格式
wyl:r3IXSXWSmlBk6
htpasswd是Apache下面的指令,如果沒有安裝Apache可以利用線上工具生成
如:
http://tool.oschina.net/htpasswdpass.png
生成好後編輯檔案,将結果寫入檔案
vim /usr/local/nginx/passwd.db
2)編輯虛拟主機配置檔案。
[root@localhost]# vim /usr/local/nginx/conf/nginx.conf //主配置檔案中http字段中添加以下語句
server {
listen 8090;
server_name localhost;
client_max_body_size 151m;
location / {
auth_basic "s1"; #虛拟主機認證命名
auth_basic_user_file /usr/local/nginx/passwd.db; #虛拟主機使用者名密碼認證資料庫
#proxy_pass http://10.0.0.10:9011; #nginx 通路
root html;
index index.html index.htm;
}
}