如何在不需要服务器上的nodejs的情况下部署asp.net核心网站?

问题描述:

我正在部署我的第一个asp.net核心网站。我们使用NPM从开发人员的角度来管理软件包,但是我的印象并不是让节点j成为托管网站的服务器上的需求?如何在不需要服务器上的nodejs的情况下部署asp.net核心网站?

现在,我收到“InvalidOperationException:无法启动节点进程”,如果我尝试运行该网站。为了尽可能保持服务器的精益,我宁愿不在那里有节点js。此外,我担心它会尝试在运行时更新/下载软件包,而不是在部署时将它们包括在内(从Visual Studio 2017部署到文件选项)。

+0

NPM是一个用Javascript编写的包管理器。您将不得不抛弃该依赖关系 – itsundefined

+0

我知道我们正在使用NPM来管理我们的依赖关系,但无法找到一种方法来在不需要服务器端的NPM/Node的情况下管理与NPM的依赖关系。有点像使用NUGET来管理依赖关系,我不需要在服务器上的nuget周围有任何东西。 – David

+0

我对.NET核心知之甚少,所以请原谅我的无知,但是您的部署过程是'npm install'的一部分?是否有可能'npm install'试图在每一次启动时运行?我也会认为你不需要NPM来运行你的网站。特别是如果这些都是客户端依赖。 –

导致此问题的功能是“服务器端渲染”。它可以通过删除禁用:

@addTagHelper “*,Microsoft.AspNetCore.SpaServices”

从查看/ _ViewImports.cshtml


看到这个堆栈的更多细节,因此问题。

How to disable server side rendering on an asp.netcore-spa application?