【发布时间】:2019-01-09 04:12:00
【问题描述】:
使用 Visual Studio 2017 (15.7.5) 应用程序运行正常。但是,发布到 IIS 7.5 时,当我尝试访问浏览器时出现以下错误:
处理请求时发生未处理的异常。
AggregateException:发生一个或多个错误。 (发生了一个或多个错误。(NPM 脚本“启动”退出,但未指示 Angular CLI 正在侦听请求。错误输出为:npm ERR!path C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\包.json
npm 错误!代码ENOENT npm 错误!错误号 -4058 npm 错误!系统调用打开 npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' npm 错误! enoent 这与 npm 找不到文件有关。 npm 错误!恩恩 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache_logs\2018-08-01T14_50_15_092Z-debug.log )) System.Threading.Tasks.Task.GetResultCore(bool waitCompletionNotification) InvalidOperationException:NPM 脚本“启动”退出,但未指示 Angular CLI 正在侦听请求。错误输出是:npm ERR!路径 C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json npm 错误!代码ENOENT npm 错误!错误号 -4058 npm 错误!系统调用打开 npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' npm 错误! enoent 这与 npm 找不到文件有关。 npm 错误!恩恩 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache_logs\2018-08-01T14_50_15_092Z-debug.log Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.StartAngularCliServerAsync(字符串 sourcePath,字符串 npmScriptName,ILogger 记录器) 堆栈查询 Cookie 标头 AggregateException:发生一个或多个错误。 (发生了一个或多个错误。(NPM 脚本“启动”退出,但未指示 Angular CLI 正在侦听请求。错误输出为:npm ERR!path C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\包.json npm 错误!代码 ENOENT npm 错误! errno -4058 npm 错误!系统调用打开 npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' npm 错误! enoent 这与 npm 找不到文件有关。 npm 错误!恩恩 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache_logs\2018-08-01T14_50_15_092Z-debug.log )) System.Threading.Tasks.Task.GetResultCore(bool waitCompletionNotification) Microsoft.AspNetCore.SpaServices.Extensions.Util.TaskTimeoutExtensions.WithTimeout(任务任务,TimeSpan timeoutDelay,字符串消息) Microsoft.AspNetCore.SpaServices.Extensions.Proxy.SpaProxy.PerformProxyRequest(HttpContext 上下文,HttpClient httpClient,任务 baseUriTask,CancellationToken applicationStoppingToken,bool proxy404s) Microsoft.AspNetCore.Builder.SpaProxyingExtensions+c__DisplayClass2_0+d.MoveNext() Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext) Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext 上下文) Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext 上下文) 显示原始异常详细信息 InvalidOperationException:NPM 脚本“启动”退出,但未指示 Angular CLI 正在侦听请求。错误输出是:npm ERR!路径 C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json npm 错误!代码 ENOENT npm 错误! errno -4058 npm 错误!系统调用打开 npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' npm 错误! enoent 这与 npm 找不到文件有关。 npm 错误!恩恩 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache_logs\2018-08-01T14_50_15_092Z-debug.log Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.StartAngularCliServerAsync(字符串 sourcePath,字符串 npmScriptName,ILogger 记录器) 显示原始异常详细信息 System.InvalidOperationException:NPM 脚本“开始”退出,但未指示 Angular CLI 正在侦听请求。错误输出是:npm ERR!路径 C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json npm 错误!代码ENOENT npm 错误!错误号 -4058 npm 错误!系统调用打开 npm 错误! enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' npm 错误! enoent 这与 npm 找不到文件有关。 npm 错误!恩恩 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache_logs\2018-08-01T14_50_15_092Z-debug.log ---> System.IO.EndOfStreamException:试图读取流的末尾。 在 Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.StartAngularCliServerAsync(字符串源路径,字符串 npmScriptName,ILogger 记录器) --- 内部异常堆栈跟踪结束 --- 在 Microsoft.AspNetCore.SpaServices.AngularCli.AngularCliMiddleware.StartAngularCliServerAsync(字符串源路径,字符串 npmScriptName,ILogger 记录器)
生成的日志如下:
如果它以 ok 结尾,它会起作用
详细的 cli ['D:\Programas\nodejs\node.exe', 详细的 cli 'D:\Programas\nodejs\node_modules\npm\bin\npm-cli.js', 详细的 cli '运行', 详细的 cli '开始', 详细的 cli '--', 详细的 cli '--port', 详细的 cli '52476' ] 使用 npm@5.6.0 的信息 使用 node@v8.11.3 的信息 详细堆栈错误:ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' 详细 cwd C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp 详细的 Windows_NT 6.1.7601 详细 argv "D:\Programas\nodejs\node.exe" "D:\Programas\nodejs\node_modules\npm\bin\npm-cli.js" "run" "start" "--" "--port" " 52476" 详细节点 v8.11.3 详细的 npm v5.6.0 错误路径 C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json 错误代码 ENOENT 错误 errno -4058 错误系统调用打开 错误 enoent ENOENT:没有这样的文件或目录,打开 'C:\Sites\NewPro\Microsum.NewPro.ERP\ERPApp\package.json' error enoent 这与 npm 无法找到文件有关。 详细退出 [ -4058, true ]
非常欢迎任何建议。
【问题讨论】:
-
@Yannis,感谢您建议的格式。我是新来的。我试图突出显示错误消息的文本,但我不能。
-
确保您的 IIS 网站映射到包含
wwwroot和ClientApp目录以及 .NET Core 应用程序 dll 的已发布目录 -
@MohsinMehmood 当我在 Visual Studio 2017 中发布时,它会生成 .Net Core dll 集,并且在这些 dll 旁边,它还会生成一个带有角度应用程序的目录和另一个名为“wwwroot”的目录,它又包含从 Angular 编译的所有文件(.ico、.js、.html、.css 等)。我在 Visual Studio 创建的这个目录的根目录中注册我的 IIS 应用程序。这是我的错吗?
-
您的问题解决了吗?您需要将 IIS 网站映射到包含 dll、wwwroot 和 ClientApp 文件夹的已发布文件夹
-
这里相同,但我的情况是我试图运行从发布文件夹调用命令 Dotnet myapp.dll 的应用程序。此外,我检查了发布文件夹,确实没有 package.json 文件
标签: asp.net-core iis-7.5 angular6