我一直在尝试部署我在Azure上使用NextJS构建的服务器端呈现React应用。我成功设置了Azure管道并发布,但在运行该应用后,当我转到Azure网站URL时,该应用似乎无法加载。构建文件内容与客户端呈现的应用不同。请分享有关部署SSR React应用(在Azure上)的资源或说明。
我使用this resource设置管道,没有遇到错误,但URL仍然没有加载应用程序。
我一直在尝试部署我在Azure上使用NextJS构建的服务器端呈现React应用。我成功设置了Azure管道并发布,但在运行该应用后,当我转到Azure网站URL时,该应用似乎无法加载。构建文件内容与客户端呈现的应用不同。请分享有关部署SSR React应用(在Azure上)的资源或说明。
我使用this resource设置管道,没有遇到错误,但URL仍然没有加载应用程序。
2条答案
按热度按时间hjqgdpho1#
正如@James在Doris回答的评论中提到的,在Next.js应用中使用自定义
server.js
会使其在生产中变慢,因为路由不是预先构建的.Usingnext build
followed bynext start
would solve this issue。但要做到这一点,你不应该有server.js
。根据在Azure Linux Web应用上部署Node JS / Next JS应用的Microsoft文档,建议使用
PM2
而不是npm start
(or)node server.js
。因此,您可以使用don't need
server.js
orweb.config
。您所需要做的就是创建一个名为ecosystem.config.js
的文件,其中包含以下内容并将Azure应用程序的启动命令设置为
package.json
脚本中没有任何更改Azure Windows应用程序服务
pm2
在Azure Windows服务中不可用-it uses IIS Server。请查看following answer及其链接的问题。其他有用资源:
2q5ifsrm2#
你需要两个文件:* * server.js和web.config**,并修改package.json如下。我已经回答了一个关于部署nextjs应用程序的问题,你可以看看这个。