nginx 能否给用户配置特定页面

2019-04-08 20:42:39 +08:00
 JadeVane

nginx 自带有Ngx_http_auth_basic_module模块,可以用来进行加密访问,想问一下如果配置了多用户,能否让登录的用户跳转到特定的路径,也就是说,有什么参数能用来判断目前登录的是哪个用户吗?例如:

  1. 当以user1+passwd1登录的时候,则页面路径跳转到example.com/user1
  2. 当以user2+passwd2登录的时候,则页面路径跳转到example.com/user2

主要是想把 fancyindex 作为多用户网盘来使用,具体要怎么做?或者有其他的实现方法吗?

还有就是,使用自带的Ngx_http_auth_basic_module模块进行加密访问的安全性如何?如果容易被破的话还有什么替代方案吗?

3258 次点击
所在节点    NGINX
11 条回复
LoliconInside
2019-04-08 20:49:58 +08:00
HTTP Basic Auth 是将用户名密码 base64 后放在 Header 中,安全性自行定夺。
你这个需求最好还是用后端程序实现。
ymcj001
2019-04-08 20:55:06 +08:00
干嘛不写个后端来处理分发
JadeVane
2019-04-08 22:06:17 +08:00
@LoliconInside
@ymcj001
感谢解答,不过对后端开发不熟,所以才想找找看有没有现成的方案可以直接用。
ysc3839
2019-04-08 22:18:59 +08:00
@LoliconInside 有 https 的话问题不大。
shuax
2019-04-08 22:26:05 +08:00
写个后端比研究 nginx 简单多了吧
0ZXYDDu796nVCFxq
2019-04-08 22:35:44 +08:00
$remote_user
weixiangzhe
2019-04-09 08:27:56 +08:00
后台返回一个角色不就好
marsgt
2019-04-09 10:13:41 +08:00
Ngx_http_auth_basic_module 这个模块实现的是 HTTP 基本认证,根本就不涉及到多用户(或者说它实现的就是最基础的 CSP )。
所以你直接去找个支持多用户的网盘程序不就得了?
yoshiyuki
2019-04-09 11:54:15 +08:00
本质上是要写后端,一定要放在 nginx 里面跑的话,可以试试 lua 模块
halk
2019-04-09 12:55:03 +08:00
可以试一试 Openresty 这种 nginx 增强版,通过 lua 代码实现逻辑
JadeVane
2019-04-09 18:09:57 +08:00
@gstqc
@weixiangzhe
@yoshiyuki
@halk
感谢解答,用了`$remote_user`做判断,然后 rewrite 到对应 location,也算是解决了。

@marsgt
主流网盘都试过,最近也是刚从用了大半年的 nextcloud 退坑的,主要是网盘功能多,用不到又占用资源,主要还是以满足目前的需求为主,毕竟小鸡。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/553112

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX