【发布时间】:2018-10-12 22:32:18
【问题描述】:
我已经编译了我的 react 应用程序使用
react-scripts build
它在App的根目录下生成了一个build\文件夹。 我正在使用
运行 build\ 文件夹sudo serve -T -p 443 build/
这会在 HTTPS 上成功运行我的 React 应用程序,因为我传递了 -T。但是我需要使用任何可用的模块来永远运行我的应用程序。我正在研究节点模块 forever 和 pm2。
我正在尝试通过以下方式使用 pm2:
sudo pm2 serve -T -p 443 build/
它抛出:
error: unknown option `-T'
当我使用时:
sudo pm2 serve -p 443 build/
它可以在控制台上运行,但我无法从 URL 访问我的应用程序
[ec2-user@ip-10-XXX-XX-XXX UI]$ sudo pm2 serve -p 443 build/
[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
[PM2] Starting /usr/local/lib/node_modules/pm2/lib/API/Serve.js in fork_mode (1 instance)
[PM2] Done.
[PM2] Serving /var/www/html/UI/build on port 8080
┌─────────────────────────┬────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐
│ App name │ id │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │
├─────────────────────────┼────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤
│ static-page-server-8080 │ 0 │ fork │ 26609 │ online │ 0 │ 0s │ 2% │ 21.7 MB │ root │ disabled │
└─────────────────────────┴────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘
Use `pm2 show <id|name>` to get more details about an app
有人可以帮我解决这个问题吗? 或者,如果有任何其他方式可以在生产环境中永久运行您的 react 应用程序。
【问题讨论】:
-
只是为了仔细检查一下,您是否有理由要托管自己的前端? netlify.com 之类的东西可能更好
-
请注意,如果您使用大多数 Linux 发行版,则不需要 PM2。 stackoverflow.com/questions/4018154/…
标签: reactjs pm2 forever serve react-scripts