我正在使用非常简单网站测试ASP.NET 5
(dnx-coreclr-win-x64.1.0.0-rc1-update1
),该网站会显示3秒的着陆页,然后重定向用户。它在本地运行,在部署到 IIS 8 (Windows 2012 R2)时可以正常工作,但如果已发布的文件夹(approot
,logs
和wwwroot
)位于本地驱动器上。
如果我尝试从UNC共享运行Web应用程序,我在stdout.log
Unhandled Exception: System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.NativeMethods.uv_loop_init(UvLoopHandle handle)
at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.loop_init(UvLoopHandle handle)
at Microsoft.AspNet.Server.Kestrel.KestrelThread.ThreadStart(Object parameter)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
所涉及的所有服务器都是同一AD域的成员。应用程序池在非特权AD用户帐户下运行,该帐户具有对共享和基础文件夹的读/写权限。
我们在负载均衡的Web服务器之间使用UNC共享。这允许我们在所有服务器同时进行更改的情况下部署一次更改。多年来一直这样做没有问题,但开放给DNX的新的(支持的,推荐的)解决方案。
答案 0 :(得分:1)
这看起来像个错误。我在github上打开了一个问题,我们正在调查它。
您可以在此处关注:https://github.com/aspnet/KestrelHttpServer/issues/671