使用 FTP/shared 文件夹部署 ASP.NET 核心网站时如何不出现 "ERROR_FILE_IN_USE " 错误?
How to not get "ERROR_FILE_IN_USE " error when deploying a ASP.NET Core website using FTP/shared folder?
我有一个面向 .net framework 4.52
的 ASP.NET Core RTM
Web 应用程序
在我的project.json
"frameworks": {
"net452": {}
},
当我将它发布到一个文件夹时,它会创建一个 MyWebApplication.exe
,当我在我的浏览器中访问该应用程序时,exe 是 运行。
我需要将网站发布到具有 Windows Server 2012
和 IIS8
的网络服务器
我可以通过 VPN 访问网站部署目录的共享文件夹。
我第一次将站点发布到文件夹时它运行正常。我访问网站 url 并加载网站。但是,当我想在进行更改并复制文件后重新发布网站时,它告诉我 MyWebApplication.exe
正在使用中并且发布失败。
我知道如何解决这个问题的唯一方法是在发布之前关闭网络服务器上任务管理器中的 MyWebApplication.exe
。但是,由于我只能通过共享目录访问该服务器,所以这是不可能的。
使用 ASP.NET 4
个网站我没有这个问题。
使用 ASP.NET CORE RC1
我也没有问题,因为它使用 dnx
虽然 HTTPPlatformHandler
允许我复制站点而不必杀死 dnx.exe
.我只需触摸 web.config
,网站就会重新启动。
我的问题是:
是否可以复制 over/publish 已部署站点的新更改版本(FTP 或通过共享文件夹访问)?
有没有办法停止网站,例如通过 FTP 或通过共享文件夹访问从网络服务器上的内存中卸载 MyWebApplication.exe
?
ERROR_FILE_IN_USE
错误是 github
上的 open issue
发布前删除web.config发布目录即可。
如果没有 web.config,站点将自动停止并从内存中卸载文件,并阻止任何人再次将站点加载到内存中以访问 URL。
另一种解决方法是将 app_offline.htm 复制到您的发布目录,这应该也可以。 Link
我通过在主机上停止我的网络应用程序来解决这个问题。全部发布成功后
您应该将此添加到您的发布个人资料:
<EnableMSDeployAppOffline>True</EnableMSDeployAppOffline>
我有一个面向 .net framework 4.52
ASP.NET Core RTM
Web 应用程序
在我的project.json
"frameworks": {
"net452": {}
},
当我将它发布到一个文件夹时,它会创建一个 MyWebApplication.exe
,当我在我的浏览器中访问该应用程序时,exe 是 运行。
我需要将网站发布到具有 Windows Server 2012
和 IIS8
我可以通过 VPN 访问网站部署目录的共享文件夹。
我第一次将站点发布到文件夹时它运行正常。我访问网站 url 并加载网站。但是,当我想在进行更改并复制文件后重新发布网站时,它告诉我 MyWebApplication.exe
正在使用中并且发布失败。
我知道如何解决这个问题的唯一方法是在发布之前关闭网络服务器上任务管理器中的 MyWebApplication.exe
。但是,由于我只能通过共享目录访问该服务器,所以这是不可能的。
使用 ASP.NET 4
个网站我没有这个问题。
使用 ASP.NET CORE RC1
我也没有问题,因为它使用 dnx
虽然 HTTPPlatformHandler
允许我复制站点而不必杀死 dnx.exe
.我只需触摸 web.config
,网站就会重新启动。
我的问题是:
是否可以复制 over/publish 已部署站点的新更改版本(FTP 或通过共享文件夹访问)?
有没有办法停止网站,例如通过 FTP 或通过共享文件夹访问从网络服务器上的内存中卸载
MyWebApplication.exe
?
ERROR_FILE_IN_USE
错误是 github
发布前删除web.config发布目录即可。
如果没有 web.config,站点将自动停止并从内存中卸载文件,并阻止任何人再次将站点加载到内存中以访问 URL。
另一种解决方法是将 app_offline.htm 复制到您的发布目录,这应该也可以。 Link
我通过在主机上停止我的网络应用程序来解决这个问题。全部发布成功后
您应该将此添加到您的发布个人资料:
<EnableMSDeployAppOffline>True</EnableMSDeployAppOffline>