首页 > web前端 > js教程 > 如何在 Netlify 上部署 Node.js Express 应用(4)

如何在 Netlify 上部署 Node.js Express 应用(4)

DDD
发布: 2024-11-10 10:57:02
原创
1040 人浏览过

Netlify 并不能让托管 Express Web 应用程序变得容易。我希望您会发现本指南很有用。

步骤

  • 按照与以下类似的方式构建您的应用程序:

How to deploy a Node.js Express app on Netlify (4)

  • 遵循本指南 https://docs.netlify.com/frameworks/express/ 。我删除了node_bundler =“esbuild”,因为它引发了ESM错误,并且无论如何一切都工作正常。
  • 创建 netlify.toml 文件时,保留特定于 API 和您想要通过 Express 提供服务的任何端点的重定向。一般重定向(即“/*”)会弄乱您的 CDN 和静态文件服务。

How to deploy a Node.js Express app on Netlify (4)

  • (可选)使用本地服务器文件进行开发,以保持图像更整洁:

How to deploy a Node.js Express app on Netlify (4)

  • package.json 可以如下所示:

     "scripts": {
        "start": "node ./functions/server.js",
        "build": "netlify deploy --prod",
        "build-dev": "NODE_ENV=development webpack --mode development --watch",
        "dev": "NODE_ENV=development node server-local.js",
        "dev-watch": "NODE_ENV=development nodemon --exec node server-local.js",
    },
    
    登录后复制
  • 编写 server.mjs 代码,如图所示:

How to deploy a Node.js Express app on Netlify (4)

  • 在index.html和其余的.html文件中,CSS、JS和其他资产的路径最好设置为CDN,它可以在开发和生产中使用,即:


  • 奔跑吧 网络化开发 部署前在控制台进行测试

主要教训

  • server.js 或 server.mjs 应用程序只能访问 /netlify/functions。除非使用命令在 netlify.toml 文件中明确指定,否则“public”或“dist”或“static”文件夹不会添加到 netlify 文件夹中
[functions]
  included_files = [
    "static/views/**"  # Include all files in static/views for server-side access
  ] 
登录后复制
  • Netlify 的 CDN 可以更好地提供静态资产,如果在 netlify.toml 文件中使用命令,这会自动发生
[build]
  publish = "static"  # Static assets to be served by Netlify's CDN. Folder defaults to public
登录后复制
  • 路由器端点之外的Console.log语句不会显示在控制台上。

以上是如何在 Netlify 上部署 Node.js Express 应用(4)的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板