【问题标题】:Angular Universal Starter works locally but wouldn't start on serverAngular Universal Starter 在本地工作,但无法在服务器上启动
【发布时间】:2019-02-17 16:23:01
【问题描述】:

我正在尝试在 Centos 服务器上运行 Angular Universal Starter。
build:ssrserve:ssr 在本地运行良好,没有错误。
然后我将dist 文件夹移动到服务器,安装了最新版本的nodejs、npm、pm2。
运行pm2 start /path/to/server.js --name universal - 进程成功启动
pm2 status 显示通用状态为errored,日志多次显示相同:

Error: Cannot find module 'zone.js/dist/zone-node'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Module.require (module.js:597:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/path/to/server.ts:1:1)
at Module._compile (module.js:653:30)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)

我应该移动整个 node_modules 文件夹还是这个错误是什么意思?
另外,我如何判断 Universal 是否真的在工作并且我看到了预呈现的页面?

【问题讨论】:

    标签: angular angular-universal


    【解决方案1】:

    你必须在你的 Centos 服务器上进入 dist 目录并运行npm install

    【讨论】:

    • npm install 说没有package.json。我认为dist 是自给自足的,不需要 200mb+ 的依赖即可工作。
    • 我将package.json 复制到目录中,运行npm install,现在它可以工作了。那么我真的需要服务器上的所有这些依赖项来运行最小的应用程序吗?哇
    • 是的,您需要所有依赖项,例如在本地模式下 :) 如果有帮助,您可以选择此答案 ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多