当前位置: 主页 > 前端开发

npm搭建前端项目-搭建本地npm仓库

发布时间:2023-03-09 21:04   浏览次数:次   作者:佚名

Prerender: 结合 SPAnpm搭建前端项目npm搭建前端项目,做预渲染

「它做的是整个前端部署工作流的事情,而且很多工作都是自动化完成。」

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

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

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

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

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

❞新建站点

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

新建站点

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

搭建本地npm仓库_npm搭建前端项目_npm本地源搭建

新建站点选择一个仓库

npm搭建前端项目_搭建本地npm仓库_npm本地源搭建

from github

npm本地源搭建_搭建本地npm仓库_npm搭建前端项目

配置 netlify

npm搭建前端项目_搭建本地npm仓库_npm本地源搭建

选择一个仓库构建选项

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

npm搭建前端项目_npm本地源搭建_搭建本地npm仓库

选择一个仓库部署成功

npm搭建前端项目_搭建本地npm仓库_npm本地源搭建

部署成功配置二级域名

npm本地源搭建_npm搭建前端项目_搭建本地npm仓库

配置二级域名

此时通过 (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"


另外,我把 /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 的官网: (opens new window)[11]

相关文章❝

Original URL:

❞Reference

[1]

如何使用免费服务搭建一个博客 (opens new window):

[2]

netlify (opens new window):

[3]

如何使用 docker 高效部署前端应用 (opens new window):

[4]

cheat-sheets (opens new window):

[5]

(opens new window):

[6]

Vercel (opens new window):

[7]

netlify (opens new window):

[8]

(opens new window):

[9]

官方文档 (opens new window): #headers

[10]

shfshanyue/blog (opens new window):

[11]

(opens new window):

[12]

如何使用 docker 高效部署前端应用 (opens new window):

[13]

如果你只想搭建一个博客 (opens new window):