搞了个 hexo 文章管理的网站 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
peihuan
V2EX    分享创造

搞了个 hexo 文章管理的网站

  •  
  •   peihuan 2021-02-08 00:30:14 +08:00 3813 次点击
    这是一个创建于 1757 天前的主题,其中的信息可能已经有所发展或是发生改变。

    曾经的痛点

    1. 不想在本地写文章、维护文章。
    2. 图片的上传、管理是一件非常麻烦的事。
    3. 希望不用登录服务器就能随时随地发布文章、取消文章。

    于是,一个能公网管理 hexo 文章的工具诞生了!

    目前所包含的基础功能:

    1. 自动定时保存文章。
    2. 图片方便的上传到图床 (粘贴、拖拽上传)。
    3. 发布、取消发布等功能。
    4. 发布文章时自动刷新 cdn 。(如果你配置了 cdn 的话,现在只有阿里,有人用,可以支持更多)

    如果想要使用,你需要有以下东西:

    1. 有公网 ip 的服务器一台。
    2. mysql (用于保存管理文章)。
    3. 阿里云 oss (用于图片的保存),如果有人用,可以支持更多 oss 。
    4. 没了

    原理

    维护 hexo 根目录下 source 文件夹中的 markdown 文件 。

    编辑文章时,保存在数据库中。 发布文章时,在 source 文件夹中写入相应 markdown 文件,调用 shell 部署 hexo,之后刷新 cdn (如果配置了的话)。

    代码仓库

    目前就我和朋友两个人倒腾玩,如果有人用的话,会持续优化。

    https://github.com/peihuanhuan/hexo-admin

    分为前端和后端,需要配置参数打包部署,我是写后端的,前端其实非常菜。。。

    最后再贴一波自己的 blog https://www.peihuan.net/

    如果觉得有什么需要补充的功能,欢迎交流。

    截图

    image.png image.png

    16 条回复    2021-02-14 22:26:33 +08:00
    yhz610
        1
    yhz610  
       2021-02-08 04:22:06 +08:00 via iPhone   1
    在刚开始接触 hexo 静态博客的时候就在想有没有一个能接口形成一个在线的前端文章管理系统,找了好久没找到。基本都是本地的。

    后来熟悉 github 后,便用 github action 自动编译发布文章,只需将 md 文件 push 一下即可,很方便。还可以自动推送到 ftp 服务器上去。

    同时,推荐一下 NetlifyCMS,同样可以实现在线编辑管理 hexo 文章。

    作者的这个看起来也不错,有时间可以试试。
    trn4
        2
    trn4  
       2021-02-08 06:26:06 +08:00 via iPhone   1
    我现在都是在 GitHub 上写 issue,不仅支持 md,还能当图床,用 GitHub actions 自动 push,自动 build 然后部署到 GitHub pages 。
    bgm004
        3
    bgm004  
       2021-02-08 10:16:36 +08:00 via Android
    比起,写文章的 ui 界面,你弄个设置的 gui 更受小白欢迎。
    liian2019
        4
    liian2019  
       2021-02-08 10:30:10 +08:00
    懒癌的救星。不过我一直都是 typora + upic
    peihuan
        5
    peihuan  
    OP
       2021-02-08 11:05:16 +08:00
    @yhz610 感谢,一直没用过 github action, 没想到还能这样玩,体验了一下,的确是非常方便了
    peihuan
        6
    peihuan  
    OP
       2021-02-08 11:06:07 +08:00
    @xiadong1994 github 当图床的话,会有点慢吧,还要配 cdn 吧?
    peihuan
        7
    peihuan  
    OP
       2021-02-08 11:07:02 +08:00
    @Track13 的确有这个想法,不用大家自己修改配置重新打包
    TMaize
        8
    TMaize  
       2021-02-08 11:47:12 +08:00 via Android
    既然有服务器了为什么还用 hexo 呢
    peihuan
        9
    peihuan  
    OP
       2021-02-08 13:31:39 +08:00
    @TMaize hexo 有各种主题、各种插件,总不能都写一遍吧
    shanyue
        10
    shanyue  
       2021-02-08 16:41:51 +08:00   1
    图床,我一般都是蹭一些静态文件托管服务的,比如我的博客直接扔到 Vercel 上

    图片放到与目录文章一级的 assets 目录,直接引用相对路径。github 也支持相对路径,因此 github 也是没有问题的,部署到 Vercel/Netlify/Github Pages 上更没有问题

    目录就是这样子的

    https://github.com/shfshanyue/blog/tree/master/node
    TMaize
        11
    TMaize  
       2021-02-08 17:32:51 +08:00 via Android
    @peihuan 直接 wordpeess 呀
    trn4
        12
    trn4  
       2021-02-09 01:50:32 +08:00
    @peihuan 我在墙外
    AhianSong
        13
    AhianSong  
       2021-02-10 11:32:04 +08:00
    @xiadong1994 请问有教程吗,我搜了下只发现了根据 issue 自动更新仓库 readme 的,没发现能自动部署到 github pages 的
    AhianSong
        15
    AhianSong  
       2021-02-11 10:44:57 +08:00 via Android
    @xiadong1994 感谢
    shanyue
        16
    shanyue  
       2021-02-14 22:26:33 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2674 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 15:05 PVG 23:05 LAX 07:05 JFK 10:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86