lifelong learning & practice makes perfect
假如服务器路径为:/home/imooc/files/img/face.png
配置的时候为:
locaion /imooc{ root /home } 用户访问的时候请求为:url:port/imooc/files/img/face.png
location /hello{ alias /home/imooc } 用户访问的时候请求为:url:port/hello/files/img/face.png,如此相当于目录imooc做一个自定义的别名。
localtion /{ root /home; }
location = /imooc/img/face1.png { root /home; }
# 符合图片的显示
location ~* .(GIT|jpg|png|jpeg) {
root /home;
}
# GIF必须大写才能匹配到
location ~ .(GIF|jpg|png|jpeg) {
root /home;
}
location ^~ /imooc/img {
root /home;
}
支持basic authentication,authentication subrequests(子请求认证) NGINX PLUS还额外支持JWT(JSON Web Tokens)
basic auth需要以以下格式存储认证信息,以冒号分隔开用户名,密码,备注等,其中密码需要加密或使用哈希值.
# comment
name1:password1
name2:password2:comment
name3:password3
nginx配置
location / {
auth_basic "Private site";
auth_basic_user_file conf.d/passwd; # 认证信息文件
}
在http, server, or location里都支持basic authentication
nginx仅支持部分加密算法,如openssl的passwd命令的默认加密方法
# 默认为 -crypt ,等同于 openssl passwd -crypt abcde
openssl passwd abcde
# Ek3zv167GN/Ow
#以表格形式输出
openssl passwd -table -crypt abcde
#abcde BbdA4jamildcM