gpt4 book ai didi

node.js - 将 Quasar SSR vue/node 应用程序部署到 Firebase 托管

转载 作者:行者123 更新时间:2023-12-03 12:17:25 25 4
gpt4 key购买 nike

我已经尝试了很多方法来在 firebase 主机上上传和运行 node/vue 项目,但没有成功。
我关注了official guidelines on Firecast youtube channel ,但似乎我错过了一些东西。
我在 SSR 模式下的 vue.js 应用程序在 localhost 上运行良好。它与基本的 node/express 应用程序略有不同。部署到 Firebase 托管后,出现错误 404 页面。
(Quasar Documentation on SSR deploy)
我用 quasar build -m ssr 构建了一个应用程序,生成一个新文件夹 dist/ssr文件夹。
enter image description herefirebase.json在我的项目根目录中的文件中,我使用 firebase init 启动了一个 firebase 项目包含以下几行:

  {
"hosting": {
"public": "dist/ssr",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"function": "app"
}
]
}
}
在部署到 Firebase 托管之前,我尝试使用 firebase serve 对其进行测试但是当我访问 localhost:5000 上的页面时我收到错误 404 或无内容。
有人有解决方案吗?

最佳答案

所以这是我想出的解决方案。
我在github上做了一个项目模板:https://github.com/danieltorscho/gcp-quasar

  • 使用 firebase init 初始化项目文件夹根目录中的 firebase 项目后,打开生成的firebase.json :
  • {
    "hosting": {
    "public": "dist/ssr",
    "ignore": [
    "firebase.json",
    "**/.*",
    "**/node_modules/**"
    ],
    "rewrites": [{
    "source": "**",
    "function": "ssrapp" // <- This NAME should be the same as in /src-ssr/index.js
    }]
    },
    "functions": {
    "source": "dist/ssr"
    }
    }
  • 安装依赖 yarn add firebase-admin firebase-functions
  • 打开和编辑/src-ssr/index.js :
  • // BEGINNING OF THE FILE
    const functions = require('firebase-functions') // <---- ADD FIREBASE FUNCTIONS

    const
    express = require('express'),
    compression = require('compression')

    const
    ssr = require('quasar-ssr'),
    extension = require('./extension'),
    app = express(),
    port = process.env.PORT || 3000
    ...
    ...
    ...
    // END OF THE FILE

    // COMMENT or DELETE following 3 lines of app.listen function
    // app.listen(port, () => {
    // console.log(`Server listening at port ${port}`)
    // })

    exports.ssrapp = functions.https.onRequest(app) // <- "ssrapp" name is the same as in firebase.json
  • 现在使用 quasar build -m ssr 构建 SSR 应用程序
  • 在您的终端中,转到 ./dist/ssr/并运行 yarn install安装 Node 模块。
  • 最后回到你的根路径“./”并在部署前使用 firebase serve 进行测试命令。它将像往常一样在端口 5000 可用。本地主机:5000
  • 关于node.js - 将 Quasar SSR vue/node 应用程序部署到 Firebase 托管,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63764314/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com