V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
whitedroa
V2EX  ›  问与答

静态博客的优点是什么

  •  1
     
  •   whitedroa · 205 天前 · 3773 次点击
    这是一个创建于 205 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想搭建一个 个人博客。

    目前有两种方案

    • 静态博客:hugo 、hexo 等,需要先在本地使用 markdown 写作,然后使用这些工具生成静态网页文件,部署到服务器或者 github 。

    • "动态" :typecho 、wordpress 、halo 等静态博客。需要部署到服务器上,且需要对应的 mysql 数据库

    这两种方式的优缺点是什么?

    目前来看,如果仅仅是用来 博客写作 ,typecho 等动态博客是不是已经毫无优点了?

    42 条回复    2021-11-02 10:09:26 +08:00
    rpman
        1
    rpman  
       205 天前 via iPhone
    刚上大二那年懵懂无知的我架过一个 wordpress ,几个月后整台 vps 被黑了
    于是再也只用静态
    privil
        2
    privil  
       205 天前
    静态博客。我 256MB 内存的机器随便跑。动态的……估计撑不住几个人访问。
    kop1989
        3
    kop1989  
       205 天前
    如果真的是单纯的文字展示,没有任何其他用途,那么静态就足够了,优势就是不依赖 web 容器,甚至不依赖服务器。任何能上传、展示富文本的地方就都是你的“博客”。
    xiadong1994
        4
    xiadong1994  
       205 天前
    不用部署在主机上
    免费
    速度快
    方便结合 git 工作流
    seki
        5
    seki  
       205 天前
    静态博客运维的需求比较少

    但是相对来说,管理用户留言之类的比较麻烦
    shuxhan
        6
    shuxhan  
       205 天前
    方便,简单,便宜,省事。一些最基本的功能,市面上的静态程序都可以满足,涉及到交互性的内容就比较薄弱了,需要引入可靠的第三方平台
    FrankAdler
        7
    FrankAdler  
       205 天前
    typecho 可以使用 sqlite ,仅装一个 php 就可以了,动态主要是调整起来方便吧,尤其是 typecho 这种 php 的,代码不复杂,改完就生效,加点插件定制点功能啥的很方便
    flyhaozi
        8
    flyhaozi  
       205 天前   ❤️ 1
    **仅仅**使用静态生成做不到的功能有:
    - 实时的内容更新
    - 实时的阅读量排行
    - 动态的图片压缩优化
    - 保存点赞评论等用户生成的内容
    - 完整的国际化支持,比如通过服务端读取语言 header 来跳转到不同语言的页面
    暂时能想到的就这些,不过基本还是都能通过嵌入自己实现或第三方提供的服务来实现
    wszgrcy
        9
    wszgrcy  
       205 天前
    @flyhaozi 国际化还是有方法的.但是所有依赖数据库的肯定支持不了.
    supuwoerc
        10
    supuwoerc  
       205 天前   ❤️ 24
    差别不大啦,除了爬虫和自己压根没人访问🐶
    cmdOptionKana
        11
    cmdOptionKana  
       205 天前
    好处很多,而且都是吸引力很大的好处:

    - 免费
    - 不需要服务器(既减少了学习量,也就不怕被入侵)
    - 备份更轻松(可以说零步骤备份,因为肯定至少网上一份、本地一份,天生自带备份特性)

    当然,缺点也有一些,但都不是致命缺点,一般没有强迫症的人都能忍受那些缺点。
    kiritoxf
        12
    kiritoxf  
       205 天前
    静态博客好像也可以仅放在 github 上
    把博客和生成的博客放在一个仓库的两个不同分支
    在线修改完博客里的 post 文章后,触发个钩子函数啥的,来 deploy 到生成博客的分支
    感觉这样就行了
    但没具体尝试过
    zhusimaji
        13
    zhusimaji  
       205 天前 via iPhone
    无论动静只要能折腾都不算事,最重要的还是坚持写博客
    whitedroa
        14
    whitedroa  
    OP
       205 天前
    @supuwoerc 扎心了啊
    whitedroa
        15
    whitedroa  
    OP
       205 天前
    @flyhaozi 说到了点子上
    phony2r
        16
    phony2r  
       205 天前
    不用维护, 可以随便找个地方托管, 比如我的就托管在 github
    https://github.com/mebtte/aritcle
    https://article.mebtte.com
    ipwx
        17
    ipwx  
       205 天前
    1. 内容可以 git 管理。
    2. 动态博客的编辑器功能弱。没错,比如你写大段公式,没有哪个动态博客系统可以做到 Typora 的体验。
    3. 动态博客做插件繁琐。比如我需要一个引用文献管理器,在 Wordpress 里面写个插件挺麻烦的。本地直接处理 markdown 了。
    ipwx
        18
    ipwx  
       205 天前
    补充一句 2) :功能弱,指的是本地 markdown 编辑器,我可以用多个不同 app 去处理不同需求。比如写公式就上 Typora ,一般可以用 Obvidian 来做双向引用。而动态博客只有在线编辑器这一个选项,不能满足就 gg
    clf
        19
    clf  
       205 天前
    其实静态博客就是把文章存在了文件系统里,而动态的则是存在了数据库里。

    文件系统的更新方式就是人肉更新或者是 git 等方式更新;读取的时候可以直接通过 url 读取访问。

    而动态的在查询、更新、删除的时候都是需要跳过一个中间商访问数据库的,如果中间商出问题了,就没法展示数据了。
    7gugu
        20
    7gugu  
       205 天前 via iPhone
    最大的卖点就是不花钱
    whitedroa
        21
    whitedroa  
    OP
       205 天前
    @ipwx 感觉这个不能算,没有编辑器 只要自己手写 markdown 语法也可以。动态博客 也可以在本地使用 markdown 编辑器来编写,然后 copy 过去吧。
    whitedroa
        22
    whitedroa  
    OP
       205 天前
    @privil 看用什么语言写的动态博客了。java 、php256m 内存肯定不可以。go+sqlite 的博客说不定可以
    Yiki
        23
    Yiki  
       205 天前
    别的不说 wordpress 真是难用,可能是我的问题...
    wensonsmith
        24
    wensonsmith  
       205 天前
    Jamstack 了解一下
    nicebird
        25
    nicebird  
       205 天前
    主要是部署方便些
    yuhu
        26
    yuhu  
       205 天前
    安全。
    ji39
        27
    ji39  
       205 天前
    部署成功后才叫静态,不是 web 应用
    0o0o0o0
        28
    0o0o0o0  
       205 天前
    https://github.com/getgridea/gridea 全自动部署,建议搭配 https://github.com/Molunerfinn/PicGo 图床使用。
    而且可以使用 js 动态渲染页面,比如搭配 https://github.com/mermaid-js/mermaid 就可以渲染流程图之类的了。
    Davic1
        29
    Davic1  
       205 天前
    如果你的重点是在于文章内容, 那么就别花太多时间在选产品,做部署上, 有很多可以直接建站的, Ghost, Wordpress 托管之类. 也不用自己担心图床的事情.

    目前自己在用 Ghost.
    Chad0000
        30
    Chad0000  
       205 天前
    @0o0o0o0 可以了解一下 CloudFlare pages ,无需图床。
    ryV60s
        31
    ryV60s  
       205 天前
    你这头像太吸引注意力了。
    totoro625
        32
    totoro625  
       205 天前
    绚丽多彩,想要折腾,尝试各种花里胡哨的东西肯定要选择动态的

    既然你想搭建博客,肯定是没搭建过,肯定是想体验一下搭建的乐趣,肯定选动态

    文章为中心,懒得维护环境的可以选择 Jekyll ,直接 github 自动生成,建议也别买域名,直接用 username.github.io
    例如: https://riggraz.dev/no-style-please/
    https://github.com/riggraz/no-style-please

    fork 一下改改内容就能自动生成博客的
    whitedroa
        33
    whitedroa  
    OP
       205 天前
    @totoro625 没太懂,你说的 jekyll 不是静态的吗
    0o0o0o0
        34
    0o0o0o0  
       205 天前
    @Chad0000 gridea 也不需要图床,只不过他不能自动删除已经上传的图片,所以可能会造成垃圾图片,所以我比较推荐配合图床使用,PicGo 是一个使用 GitHub 仓库来作为图床的。所以全部部署在 GitHub 上,而且一键生成发布,并且可以很简单配置评论区、谷歌统计等,对于不想折腾的比较方便。
    ipwx
        35
    ipwx  
       205 天前
    @whitedroa 不不,公式多、表格多,那种东西手写是不现实的。

    比如 https://wiki.ipwx.me/Deep_Learning/Energy_Based_Models/Energy_Function_in_Probabilistic_Models/
    chezs66
        36
    chezs66  
       205 天前
    如果你的页面内容与访问者身份无关,使用静态博客的好处包括利用 CDN 无限水平扩展,安全(没有服务器,没有乱七八糟跨域请求),构建时直出 html 可减少白屏时间
    5200
        37
    5200  
       205 天前
    玩了几年的 typecho 、wordpres ,有段时间工作太忙,服务器忘记续费了。你懂的然后数据全丢了,只能通过快照恢复一些数据。 动态博客方便是方便,但是一旦服务器过期了,或者被黑了,数据很难找回。除非有时不时备份数据的习惯。

    相对静态的部署就方便多了,直接 github 同步代码。部署也只是把代码拉取下来,就算用服务器部署博客,服务器过期了或者被黑了,你的 git 数据还在。
    ispinfx
        38
    ispinfx  
       205 天前
    优点:静态
    ispinfx
        39
    ispinfx  
       205 天前
    缺点:静态
    kilasuelika
        41
    kilasuelika  
       205 天前 via Android
    计算机科学永恒的两个矛盾:
    时间换空间
    空间换时间
    yunyuyuan
        42
    yunyuyuan  
       205 天前
    不用花钱
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4212 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 02:22 · PVG 10:22 · LAX 19:22 · JFK 22:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.