C# 将ASP.Net Web窗体项目部署到Fedora 24

C# 将ASP.Net Web窗体项目部署到Fedora 24,c#,asp.net,linux,apache,nginx,C#,Asp.net,Linux,Apache,Nginx,以下是我当前的设置: 我的本地计算机:这是我在Windows 10上使用visual studio 2015 professional创建和编程ASP.Net WebForms项目的地方,该项目启用了Cloudflare Flexible SSL。我还启用了团队资源管理器,这意味着我的项目将同步到Github,我的所有文件也存储在我自己的存储库中 我的服务器计算机:运行Fedora24,我安装了DotnetCLI(又称.Net内核)、apache(httpd)、nginx和。我想在此计算机上的

以下是我当前的设置:

  • 我的本地计算机:这是我在Windows 10上使用visual studio 2015 professional创建和编程ASP.Net WebForms项目的地方,该项目启用了Cloudflare Flexible SSL。我还启用了团队资源管理器,这意味着我的项目将同步到Github,我的所有文件也存储在我自己的存储库中
  • 我的服务器计算机:运行Fedora24,我安装了DotnetCLI(又称.Net内核)、apache(httpd)、nginx和。我想在此计算机上的默认web目录(/var/www/html/mysite/)中部署/发布和托管我的webforms项目
问题是,dotnet cli依赖于
项目。json
与WebForms不兼容。Net Core基本上不是一个选项。使用mod_mono时,如果在运行服务器时使用命令
xsp4--port 9000
连接到,则会出现
错误500
(见下文)。我不能使用
xsp4--port 80
xsp4--port 443
,因为它声称
地址已经在使用中
,即使
httpd
是监听这些端口的唯一进程请注意,我可以使用
xbuild
命令成功构建项目

如何从github或本地计算机获取项目并将其部署到服务器计算机上?我错过什么了吗?以下是我的虚拟主机配置,以供参考:启动httpd.service时,我通常不会收到任何错误。

编辑:


我还将
nginx
fastcgi-mono-server4
一起用于配置,而不是使用nginx,这是我直接从nginx获得的,但仍然不走运。我通常得到这个
错误500
:其他时候我可以得到其他类型的
错误500
。如果有一个可以与apache或nginx一起使用的解决方案,请告诉我。

您的代码是完整的NET,甚至不是NET Core,正在尝试将其部署到Mono Framework。这可能不起作用,请将您的项目转换为Mono或NET Core,然后重试。

Web窗体是否与asp.NET Core兼容?友好的URL NuGet包也兼容吗?似乎暗示Web表单将保留在.NET4.x框架中。@DafyddNZ是的,这就是问题所在。我刚刚退出asp.NETCore,我一直在尝试使用带有mod_mono的httpd,但这也不起作用。现在我使用的是nginx,但我在上面看到了错误,请查看您提供的Mono for asp.net链接,它讨论的是asp.net 2.0。您的目标是什么.Net framework?@DafyddNZ 4.5.2此处有一个兼容性页面:,如果您使用的是任何异步模式,mono将不支持这些模式。ASP.NET 4是完全兼容的,因此,您可以考虑降级到该框架.NETCARE与Web窗体不兼容。我不能在现有项目上更改框架,如果我以.Net核心为目标创建一个新项目,它会以一种全新的、不熟悉的格式创建它。您可能希望在ubuntu中尝试托管未修改的应用程序。我不是100%确定,因为这还没有实施。请看一看。用户试图在Windows Server docker映像上运行IIS ASP.NET。也许如果我有时间在本周末我的博客上试用同样的帖子,那是在Windows 10……我正在运行FEDORA Linux,这是你可以考虑在FEDORA中拥有一个虚拟机并有Windows DOCKER的问题。虚拟操作系统可能是一个“容器操作系统”,以防资源短缺。抱歉没有直接考虑linux系统。