V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiaofeifei09
V2EX  ›  程序员

新人求指点!!!网站上注册用户的头像该如何处理?存放方式和访问方式怎样?

  •  
  •   xiaofeifei09 · 2016-04-27 13:52:27 +08:00 · 5624 次点击
    这是一个创建于 3162 天前的主题,其中的信息可能已经有所发展或是发生改变。
    22 条回复    2016-04-28 19:22:19 +08:00
    xiaofeifei09
        1
    xiaofeifei09  
    OP
       2016-04-27 13:59:18 +08:00
    求帮忙。。。
    Dukec
        2
    Dukec  
       2016-04-27 14:03:11 +08:00
    没有明白你的标题表达的需求是什么...
    secfun
        3
    secfun  
       2016-04-27 14:05:43 +08:00   ❤️ 1
    图片存到本地服务器或者第三方云存储服务商,图片路径写到本地数据库里。访问的话根据路径规则 nginx 上做区分。
    dalaomj
        4
    dalaomj  
       2016-04-27 14:07:22 +08:00
    你想怎么处理就怎么处理。想不出方式就是还没入门。
    你不会是想储存到数据库里吧?
    learnshare
        5
    learnshare  
       2016-04-27 14:14:40 +08:00   ❤️ 1
    文件寸硬盘,路径进数据库。

    尽量别把文件存进数据库
    xiaofeifei09
        6
    xiaofeifei09  
    OP
       2016-04-27 14:41:12 +08:00
    @learnshare
    @secfun
    谢谢你们。
    yuriko
        7
    yuriko  
       2016-04-27 19:36:45 +08:00
    理论上存数据库不是不行……

    但 TM 作为当年这么干过的表示……这 TM 就是脑子被枪打过了
    Z1076
        8
    Z1076  
       2016-04-27 20:08:52 +08:00 via Android
    一般是头像文件存在本地或者图片服务器,数据库存储图片的文件+存储路径
    tangzhehao
        9
    tangzhehao  
       2016-04-27 20:26:52 +08:00
    直接当普通的图片文件处理呗,反正小。
    creatorYC
        10
    creatorYC  
       2016-04-27 22:28:48 +08:00
    应该是图片上传至服务器,图片路径保存在数据库中,反正大多是这么干的
    WIwindson
        11
    WIwindson  
       2016-04-27 23:22:10 +08:00
    假如图片访问地址为 http://example.com/v2ex20160101.jpg
    数据库图片字段存储 v2ex20160101.jpg ,以防以后改域名。
    图片如果不是非常敏感的话,没必要自己存储,可以使用第三方图片存储,直接搜就知道。
    Light3
        12
    Light3  
       2016-04-27 23:41:51 +08:00
    我司现在都不记录头像地址了 就是直接把那个 图片改成 ID 后面跟点东西存起来放一个这个用户的文件夹 当然存在第三方
    realpg
        13
    realpg  
       2016-04-28 02:33:18 +08:00
    表示头像已经很多年不存地址了。
    浪费数据库空间,取个头像地址还要单独查询
    一般逻辑上我的头像直接存到
    avatar/{userid}.png
    avatar/{userid}_large.png
    avatar/{userid}_medium.png
    avatar/{userid}_small.png
    avatar/{userid}_tiny.png

    可能是本地,可能是可直接管理结构的云
    Tink
        14
    Tink  
       2016-04-28 04:38:59 +08:00 via iPhone
    写死
    XianZaiZhuCe
        15
    XianZaiZhuCe  
       2016-04-28 05:00:38 +08:00 via iPhone
    @realpg 好机智。谢谢。
    ango
        16
    ango  
       2016-04-28 09:22:55 +08:00
    远端第三方存储

    头像生成规则统一到公共方法: getAvatar(userid, size = small)

    avatar/small/{userid}.png
    avatar/medium/{userid}.png
    avatar/large/{userid}.png
    avatar/160x160/{userid}.png

    可以参考一下微博头像的路径
    Liang
        17
    Liang  
       2016-04-28 09:43:25 +08:00
    1.{userid}.jpg
    2.{user.avatar}.jpg
    3.{encode(userid)}.jpg
    ayaseangle
        18
    ayaseangle  
       2016-04-28 10:43:32 +08:00 via Android
    直接使用第三方头像服务。
    xiaofeifei09
        19
    xiaofeifei09  
    OP
       2016-04-28 11:42:27 +08:00
    @Light3
    @realpg
    首次加载图片是从远程加载过来的,那如果图片被缓存在了本地,我们还需要从远程加载吗?这时候应该如何处理呢?
    Light3
        20
    Light3  
       2016-04-28 12:57:51 +08:00
    @xiaofeifei09 怎么能缓存本地呢。你把路径写成第三方的。每次都去他那拿阿
    twoyuan
        21
    twoyuan  
       2016-04-28 13:19:05 +08:00
    gravatar
    petelin
        22
    petelin  
       2016-04-28 19:22:19 +08:00 via Android
    用 Mongodb 是不是就该存文件到数据库了了?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1535 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:03 · PVG 01:03 · LAX 09:03 · JFK 12:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.