当前位置:首页 > CN2资讯 > 正文内容

使用 Netlify 免费托管前端项目

2天前CN2资讯

随着一些云服务的发展与兴起,应用部署及上线的成本越来越低,甚至可以实现零成本部署。本系列文章将介绍如何使用薅羊毛的方式来搭建各个项目。

目前,首先更新在博客中,见: https://shanyue.tech/no-vps/

本系列的第一篇文章 如何使用免费服务搭建一个博客 (opens new window)[1],其中提到了使用 netlify 做博客托管服务,本篇文章对其做简单介绍。

netlify (opens new window)[2] 可以为你的静态资源页面进行托管服务,就是说它可以托管你的前端应用,如同 github page 一般。不过,它不又只像 github page 那么功能单一,它可以做更多的事情

  • CI/CD: 当你 push 代码到仓库的特定分支会自动部署
  • http headers: 你可以定制资源的 http header,从而可以为单页面应用做「缓存优化」
  • http redirect/rewrite: 配置 /api 解决跨域问题,根据业务需求配置更多的路由重定向
  • 二级域名: 如果你没有自己的域名,可以使用它的任意二级域名:只要没有被占用,这比 github page 多仓库配置域名时只能在路径上加后缀 /path 要友好很多
  • CDN: 把你的静态资源推到各个边缘节点,虽然都在国外...
  • https: 自动生成证书,当然使用的是 lets encrypt
  • Prerender: 结合 SPA,做预渲染
  • 「它做的是整个前端部署工作流的事情,而且很多工作都是自动化完成。」

    以前我写过一篇文章: 如何使用 docker 高效部署前端应用 (opens new window)[3]。其中讲了如何使用一个 nginx 镜像优化构建前端静态资源的过程,而这只是前端部署工作流的一小部分,这种方案更加适合小型公司。

    而在大型公司基础设施更加健全,对于前端部署很有可能有一个部署平台,如同 netlify 一样:

    「你根本不需要构建镜像,你只需要写一个极其简单的配置文件,甚至不需要配置文件,你仅仅只需去某个 UI 页面进行点点点就可以完成前端系统的整个部署流程。」

    本篇文章讲解如何结合 netlify 去部署你 github 上的前端应用。将以我的个人仓库 cheat-sheets (opens new window)[4] 部署到 https://cheatsheeets.netlify.com/git (opens new window)[5] 作为示例进行演示。

    与 Netlify 相似功能的 Vercel (opens new window)[6] 同样备受推荐,而且它的网络速度更快,UI 界面更加友好,将在以后章节对它进行简单介绍

    新建站点

    以下大都是下一步操作一点到底,截图进行演示,如不感兴趣,可以跳过。仅仅构建选项时,需要注意一下,在 Vercel 及一些 Serverless 解决方案中,构建选项都是最为重要的。

    新建站点

    使用 github 授权登录 netlify (opens new window)[7]。在主页点击 New site from git 按钮,新建站点

    新建站点

    选择一个仓库

    from github配置 netlify选择一个仓库

    构建选项

    • build command: 如何构建生成静态文件资源,一般会是 npm run build
    • publish directory: 静态文件资源目录,一般会是 public/dist 等目录

    另外也可以作为配置文件,参考下一节

    选择一个仓库

    部署成功

    部署成功

    配置二级域名

    配置二级域名

    此时通过 https://cheatsheeets.netlify.com/git (opens new window)[8] 访问页面,成功部署

    配置文件

    配置文件可以配置你的 http 的 header,rewrite,redirect等,可以参考 官方文档 (opens new window)[9]

    以下我是的博客 shfshanyue/blog (opens new window)[10] 的配置文件

    [build]
      base = ""
      publish = ".vuepress/dist"
      command = "npm run build"

    [[headers]]
      for = "/*"

      [headers.values]
        cache-control = "max-age=7200"

    [[headers]]
      for = "/assets/*"

      [headers.values]
        cache-control = "max-age=31536000"


    • build.publish: 静态文件目录
    • build.command: 如何生成文件的命令

    另外,我把 /assets/* 做了永久缓存,因为里边都是带了 hash 值的静态文件

    配置 api 解决跨域问题

    另外,如果你的前端应用需要配置代理服务器,比如 /api 与 /graphql,可以设置 redirects。算是替代了一部分 nginx 的功能

    [[redirects]]
      from = "/graphql/"
      to = "https://graphql.shanyue.tech"
      status = 200
      force = true
      headers = {X-From = "Netlify"}


    小结

    如果你有个人博客,个人作品或者应用,那么你可以试一下 netlify。目前就有很多示例项目或者官方文档部署在 netlify 上,如大名鼎鼎lodash 的官网: https://lodash.com (opens new window)[11]

    相关文章

    • 如何使用 docker 高效部署前端应用 (opens new window)[12]
    • 如果你只想搭建一个博客 (opens new window)[13]

    Original URL: https://shanyue.tech/no-vps/deploy-fe-with-netlify.html

    Reference

    [1]

    如何使用免费服务搭建一个博客 (opens new window):http://shanyue.tech/no-vps/if-you-want-a-blog.html

    [2]

    netlify (opens new window):https://www.netlify.com/

    [3]

    如何使用 docker 高效部署前端应用 (opens new window):https://shanyue.tech/op/deploy-fe-with-docker.html

    [4]

    cheat-sheets (opens new window):https:///shfshanyue/cheat-sheets

    [5]

    https://cheatsheeets.netlify.com/git (opens new window):https://cheatsheeets.netlify.com/git

    [6]

    Vercel (opens new window):https://vercel.com/

    [7]

    netlify (opens new window):https://www.netlify.com/

    [8]

    https://cheatsheeets.netlify.com/git (opens new window):https://cheatsheeets.netlify.com/git

    [9]

    官方文档 (opens new window):https://docs.netlify.com/configure-builds/file-based-configuration/#headers

    [10]

    shfshanyue/blog (opens new window):https:///shfshanyue/blog

    [11]

    https://lodash.com (opens new window):https://lodash.com/

    [12]

    如何使用 docker 高效部署前端应用 (opens new window):https://shanyue.tech/op/deploy-fe-with-docker.html

    [13]

    如果你只想搭建一个博客 (opens new window):https://shanyue.tech/no-vps/if-you-want-a-blog.html


      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/19701.html

      分享给朋友:

      “使用 Netlify 免费托管前端项目” 的相关文章

      Wikihost:构建高效知识库的理想WordPress主题

      Wikihost是一个专为WordPress平台设计的知识库主题,目的在于帮助用户轻松创建和管理知识库文章与文档页面。这款主题适合各种类型的网站,从小型企业到大型社区,用户都能通过它建立富有信息性的页面。Wikihost给用户提供了一整套便捷的功能,帮助他们分享知识和信息。 我发现Wikihost的...

      深入探讨144GB显存显卡在深度学习中的应用与优势

      在谈到现代显卡时,144GB显存无疑成为了一个引人注目的热门话题。显存是显卡中极为关键的一部分,决定着我们在高性能计算、图形处理和深度学习等领域的使用体验。显存的容量直接影响到显卡在执行复杂任务时的能力,而144GB的显存容量,帮助我们突破了许多传统显存限制。 首先,显存的基本概念就像是计算机的临时...

      搬瓦工最新优惠码分享,让你享受更多折扣

      在寻找优质VPS时,搬瓦工(BandwagonHost)绝对是一个热门的选择。为了让用户在购买过程中享受到更多优惠,现在分享一下搬瓦工最新的优惠码。 最新优惠码是BWHCGLUKKB,通过这个优惠码用户可以享受6.78%的循环优惠,这一优惠适用于搬瓦工全场的商品,无论是新购、续费还是升级服务,都能获...

      全面掌握VPS线路检测:提高网络性能的关键工具和方法

      当我们讨论VPS(虚拟专用服务器)时,线路检测是不可或缺的一部分。VPS线路检测主要是评估VPS网络性能的一个环节,涵盖了多个重要的测试方法,比如ping值测试、路由跟踪,以及下载速度测试。每一种检测方式都有其独特的功能,通过这些手段,我们能够获取到相关的网络性能数据,从而更好地了解VPS的使用状态...

      国内到东京快还是首尔快网络速度对比分析

      引言 在这个数字化快速发展的时代,网络速度对我们生活的影响越来越显著。很多时候,我们的工作、学习和娱乐都离不开稳定的网络连接。尤其是当我们考虑访问国外网站或进行国际交流时,网络速度的重要性更是无法忽视。今天,我想带大家探讨国内到东京和首尔的网络速度比较,看看这两个城市的网络表现究竟有何不同。 为什么...

      Gcore VPS评测:高性能云计算虚拟专用服务器的最佳选择

      Gcore VPS是一款基于云计算的虚拟专用服务器,近年来备受用户推崇。我发现它不仅仅是一台服务器,而是为各种应用和业务需求提供了一种灵活可靠的解决方案。从高负载网站到应用程序的托管,Gcore VPS都能很好地满足这些需求。 了解Gcore VPS的定义及功能,首先可以知道它是针对企业和个人用户推...