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

请问 hugo 博客框架必须部署到 GitHub 吗?

  •  
  •   Amagatarai · 2022-07-07 23:26:56 +08:00 via Android · 1827 次点击
    这是一个创建于 651 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近准备自己搞个 blog 玩玩,决定用 hugo 框架,买好了域名,买好了服务器,结果发现网上的教程几乎全是部署到 GitHub 仓库里的

    由于个人不太喜欢部署到 GitHub 上这个方式,想直接放在自己的服务器上然后使用购买的域名进行访问

    目前我想到一个非常粗暴的方法,是用 NGINX 直接反向代理 localhost ,但这样 hugo 则是一直以本地预览的形式运行,不像是一个正确的博客运行方式

    所以请问各位是否有更好的解决方案,刚刚接触这一块,谢谢大家为我详细解答
    12 条回复    2022-07-09 13:10:16 +08:00
    zggsong
        1
    zggsong  
       2022-07-07 23:28:41 +08:00
    把生成的 public 目录下的静态资源放到服务器上 nginx 开一个网站,网站目录指向刚才上传的目录即可
    lithiumii
        2
    lithiumii  
       2022-07-07 23:34:12 +08:00 via Android
    不用,我就部署到了 GitLab 。实际上你 Build 好之后扔给任何成熟的静态页面托管服务都行
    Dvel
        3
    Dvel  
       2022-07-07 23:53:52 +08:00
    我是放到 GitHub 私有仓库,部署到 Cloudflare Pages ,每次 push 后不到 10 秒钟就更新完了,挺方便的。
    就是最近发现好像国内大概率访问不了了。。。
    server
        4
    server  
       2022-07-08 00:05:08 +08:00
    netlify
    Bronya
        5
    Bronya  
       2022-07-08 08:48:11 +08:00
    教程放到 github 大概率是因为 github 免费还不审查,自己建网站还要域名啥的,而且写一些科学上网的东西还会被查水表
    Dogtler
        6
    Dogtler  
       2022-07-08 08:53:37 +08:00 via iPhone
    建议 vercel ,真心好用。
    varkai
        7
    varkai  
       2022-07-08 09:10:39 +08:00
    @Dogtler 不知道为什么我的 Hugo 部署在 Vercel 总是失败,我的 Hugo 博客的主题是作为 git 子模块包含在 Hugo 里的,是不支持 git 子模块吗?
    salor
        8
    salor  
       2022-07-08 10:01:39 +08:00
    Hugo+Caddy+Webhook ,push 到 github 后会自动触发 webhook 抓到服务器上。
    xinge666
        9
    xinge666  
       2022-07-08 11:40:13 +08:00 via iPhone
    我是直接托管到 cf pages ,cname 一下就行,特别方便
    wdssmq
        10
    wdssmq  
       2022-07-08 13:46:46 +08:00
    hugo hexo 这些算是“静态博客「生成」工具”,生成的 public 文件夹放到 web 服务里就能访问;

    GitHub Pages 则是比较出名又免费的那个 web 服务;
    Amagatarai
        11
    Amagatarai  
    OP
       2022-07-09 10:36:36 +08:00
    非常抱歉这么晚才回复大家!
    @zggsong 按照你的方法确实有用!最开始我其实也试过,但是是直接 nginx 指向 hugo 生成的那个文件夹,结果就导致 403 错误。非常惭愧,我对 nginx 这方面的知识还比较欠缺
    @lithiumii 部署到静态页面托管平台确实是个普遍的方法,但是我更倾向于部署在自己的服务器上,之前在 gitee 上部署过,后来 gitee pages 整改还是啥的就不能创建了,在那之后就再也没用过
    @Bronya 言之有理!不过我为了搭博客其实也专门买了服务器和域名,不好意思放在那吃灰
    @wdssmq 谢谢提供思路!已经通过移动 public 文件夹位置到 nginx 网站目录的方式实现服务器本地部署!
    @Dvel GitHub 访问不稳定确实是我不考虑部署到这类平台的一个原因
    wdssmq
        12
    wdssmq  
       2022-07-09 13:10:16 +08:00
    姑且补充一下以防万一,如果没犯这种错误可以无视:

    1 、好像 hugo 可以指定生成 public 的路径;
    2 、生成路径默认,nginx 配置内直接指定相应路径为 root 目录;
    3 、也可以 ln -s 创建一个软链接给 nginx ;

    另外,纯静态站也可以试试 caddy ,自动配置 ssl 证书。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5505 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 06:31 · PVG 14:31 · LAX 23:31 · JFK 02:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.