Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在我的域上启动基于OWIN的自托管web api?_C#_Asp.net_Asp.net Web Api_Owin - Fatal编程技术网

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

C# 如何在我的域上启动基于OWIN的自托管web api?,c#,asp.net,asp.net-web-api,owin,C#,Asp.net,Asp.net Web Api,Owin,我想在我最近购买的域上部署我的ASP.NET Web Api。我还想自己托管它,这样我就不需要IIS了。在阅读教程时,我需要在我的服务器上启动此控制台应用程序,以便能够自行托管我的web api: public class Program { static void Main(string[] args) { // Specify the URI to use for the local host: string baseUri = "http:/

我想在我最近购买的域上部署我的ASP.NET Web Api。我还想自己托管它,这样我就不需要IIS了。在阅读教程时,我需要在我的服务器上启动此控制台应用程序,以便能够自行托管我的web 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();
    }
}
公共类程序
{
静态void Main(字符串[]参数)
{
//指定要用于本地主机的URI:
字符串baseUri=”http://localhost:8080";
WriteLine(“正在启动web服务器…”);
WebApp.Start(baseUri);//Startup是我的类,它具有web api的配置
WriteLine(“在{0}运行的服务器-按Enter键退出。”,baseUri);
Console.ReadLine();
}
}

问题是,我只能使用FTP客户端(如WinSCP)在我的域中删除文件。我需要做什么才能在我的域上实际运行此应用程序,以便它能够将HTTP请求路由到我的web api?

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