无法加载应用程序或执行命令'Microsoft.AspNet.Server.Kestrel“ [英] Unable to load application or execute command 'Microsoft.AspNet.Server.Kestrel'
问题描述
我想我的部署ASP.NET 5的WebAPI到远程服务器(Windows Server 2008 R2)和时遇到麻烦它与IIS正常运行。
I am trying to deploy my ASP.NET 5 WebApi to a remote server (Windows server 2008 R2) and am having trouble getting it to run correctly with IIS.
project.json
project.json
{
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
"App.Data": "1.0.0-*",
"App.Model": "1.0.0-*",
"App.Repository": "1.0.0-*",
"App.ViewModel": "1.0.0-*",
"AutoMapper": "4.1.1",
"Microsoft.AspNet.Authentication": "1.0.0-rc2-16009",
"Microsoft.AspNet.Authentication.JwtBearer": "1.0.0-rc2-16009",
"Microsoft.AspNet.Diagnostics": "1.0.0-rc2-16136",
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc2-15873",
"Microsoft.AspNet.Mvc": "6.0.0-rc2-16377",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-rc2-16017",
"Microsoft.AspNet.Server.WebListener": "1.0.0-rc2-15932",
"Microsoft.AspNet.StaticFiles": "1.0.0-rc2-15916",
"Microsoft.Framework.Configuration.Json": "1.0.0-rc1-15666",
"Microsoft.Framework.Logging": "1.0.0-rc1-15644",
"Microsoft.Framework.Logging.Console": "1.0.0-rc1-15644",
"Microsoft.IdentityModel.Protocols.OpenIdConnect": "2.0.0-rc1-211120828"
},
"commands": {
"kestrel": "Microsoft.AspNet.Server.Kestrel",
"web": "Microsoft.AspNet.Server.Kestrel"
},
"frameworks": {
"dnx451": { }
},
"exclude": [
"wwwroot",
"node_modules"
],
"publishExclude": [
"**.user",
"**.vspscc"
]
}
当我尝试从浏览器访问该应用程序,我没有得到任何回应。而当我执行 web.cmd
在服务器上,我得到以下错误:
when I try to access to the application from the browser, I get no response. And when I execute web.cmd
on the server, I get the following error:
Error: Unable to load application or execute command 'Microsoft.AspNet.Server.Ke
strel'. Available commands: kestrel, web.
System.IO.FileNotFoundException: Le fichier spécifié est introuvable. (Exception
de HRESULT : 0x80070002)
à System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence)
à System.Reflection.Assembly.LoadFile(String path)
à Microsoft.Dnx.Runtime.Loader.LoadContext.LoadFile(String assemblyPath)
à Microsoft.Dnx.Runtime.Loader.PackageAssemblyLoader.Load(AssemblyName assemb
lyName, IAssemblyLoadContext loadContext)
à Microsoft.Dnx.Runtime.Loader.PackageAssemblyLoader.Load(AssemblyName assemb
lyName)
à Microsoft.Dnx.Host.LoaderContainer.Load(AssemblyName assemblyName)
à Microsoft.Dnx.Host.DefaultLoadContext.LoadAssembly(AssemblyName assemblyNam
e)
à Microsoft.Dnx.Runtime.Loader.AssemblyLoaderCache.GetOrAdd(AssemblyName name
, Func`2 factory)
à Microsoft.Dnx.Runtime.Loader.LoadContext.LoadAssemblyImpl(AssemblyName asse
mblyName)
à Microsoft.Dnx.Runtime.Loader.LoadContext.ResolveAssembly(Object sender, Res
olveEventArgs args)
à System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String as
semblyFullName)
感谢您的帮助。
推荐答案
请确保您已安装在目标服务器上的所有依赖。运行 DNU列表
在cmd中看到所有项目的依赖。
Make sure you have all the dependencies installed on target server. Run dnu list
in cmd to see all the project dependencies.
如果他们中的一些没有安装(它们将出现红色)运行 DNU恢复
来恢复所有的包。
If some of them are not installed (they will appear red) run dnu restore
to restore all packages.
您也可以确保您的项目运行成功生成 DNU建立
You can also make sure that your project builds successfully by running dnu build
希望它可以帮助..
这篇关于无法加载应用程序或执行命令'Microsoft.AspNet.Server.Kestrel“的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!