c# - 在 Linux 上运行 ASP.NET 应用程序

标签 c# asp.net linux mono xsp4

我正在尝试在 Linux 环境 (Centos7) 中运行在 .NET Framework 4.5 (Windows) 中编写的应用程序。

我尝试过 mono 和 xsp4,但我有以下疑问:

  • Mono 和 xsp4 是在 .Net 中执行代码的最佳应用程序?
  • 我应该先在 Linux 中编译 *.cs 吗?
  • 可以在Linux中直接运行windows中生成的publish文件夹吗 (如果是的话)?
  • 我可以在 asp.net 中运行 .net 制作的应用程序

问候

最佳答案

为标准 .NET 框架编写的应用程序无法在 Linux 中运行;您可以尝试在 Mono 中运行它们,但它在支持方面有许多限制。如果您想保证支持,最好使用 Monodevelop 编译您的应用程序,这样它将针对该运行时进行编译。这也是执行此操作的“旧”方法。

应该做的是针对.NET Core;它被设计为在其他操作系统(包括许多 Linux 发行版)上运行。当您这样做时,您将为您的发行版添加运行时标识符并发布到它;生成将在该平台上使用 dotnet 命令运行的二进制文件。

请注意,在生产中使用 .NET Core 时,您需要为“生产就绪”的 Web 服务器(例如 IIS、Apache 或 Nginx)设置反向代理,因为这些服务器已针对攻击进行了强化,但 Kestrel 服务器尚未做到这一点。

关于c# - 在 Linux 上运行 ASP.NET 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49945072/

相关文章:

c# - 十进制三进制不起作用

c# - 尝试在 formview 中绑定(bind)下拉列表时出现空引用异常

ASP.NET 成员(member) : safe user delete

linux - echo 没有正确回显值 - 没有双引号的 BASH Linux

c# - 使用partialview时刷新部分

c# - .NET 4.x 相对于 .NET 3.5 更改了小数点 - 如何修复? (统一)

c# - 具有依赖注入(inject)的 WinForms MVC

c# - 从 CodeBehind 填充 GridView

json - 如何使用 jq 从未被 ""包围的 JSON 响应中获取小数/数字类型的值

python - 如何让我的自定义 shell 与 ssh 一起工作?