如何在我的域上启动基于 OWIN 的自托管 Web api?

How to launch self-hosted OWIN-based web api on my domain?

我想在我最近购买的域上部署我的 ASP.NET Web Api。我也想自行托管它,这样我就不需要 IIS。正如我从教程中读到的那样,我需要在我的服务器上启动这个控制台应用程序,以便我可以自行托管我的网站 api:

public class Program
{
    static void Main(string[] args)
    {
        // Specify the URI to use for the local host:
        string baseUri = "http://localhost:8080";

        Console.WriteLine("Starting web Server...");
        WebApp.Start<Startup>(baseUri);  // Startup is my class that has configurations for my web api
        Console.WriteLine("Server running at {0} - press Enter to quit. ", baseUri);
        Console.ReadLine();
    }
}

问题是,我只能使用 FTP 客户端(例如 WinSCP)将文件放到我的域中。我需要做什么才能真正 运行 我域上的这个应用程序,以便它可以实际将 HTTP 请求路由到我的网站 api?

您可以在家里的机器上 运行 这个控制台应用程序(尽管您需要将请求转发到路由器的 public ip,并允许在路由器上进行端口转发到托管应用程序的适当私有 IP 地址),或者您可以 运行 在 Amazon Web Services(AWS...以及其他几个基于云的服务提供商)中的 EC2 实例上使用此控制台应用程序,并执行类似的操作转发请求以及不使用 AWS 设置的内容)。我建议在继续之前阅读有关域、托管、请求转发和端口转发的内容。您当前的设置不太可能允许您 运行 此应用程序(因为它们可能提供托管静态内容的服务...尽管某些托管提供商可能允许执行自定义应用程序和脚本)。