我正在用C编写一个社交网站,并用Nginx提供服务.我如何才能使经过身份验证的用户访问他们自己的目录-ONLY-用户特定的index.html所在的目录.我不是问如何使用特定于用户的指令填充index.html,而是如何将它们锁定到自己的目录中
最佳答案
map $remote_user $profile_directory {
default $remote_user;
'' guests;
pavel admins;
ivan admins;
}
server {
location /profile/ {
alias /path/to/www/$profile_directory/;
...
}
}
> http://nginx.org/en/docs/http/ngx_http_core_module.html#variables
> http://nginx.org/r/map
> http://nginx.org/r/alias
> http://nginx.org/r/root
> http://nginx.org/r/location
第二个例子(见评论):
server {
location / {
auth_basic "Please Login";
auth_basic_user_file "/etc/Nginx/htpasswd";
root /var/www/sites/mysite.com/http/$remote_user;
}
}