我已经在.netcore中创建了一个HttpListener来侦听特定端口上的传入请求,我需要将ssl证书绑定到Ubuntu(版本18.04.2 LTS)上的端口8202,但不确定如何操作。我的Google搜索使用Apache(或我未运行的其他Web服务器)或使用httpcfg来启动虚拟主机,但我没有使用mono。
我在Windows机器上创建了该应用程序,使用“ netsh http add sslcert”后,一切运行正常,在Linux端,当应用程序显示为http:而不是https:时,该应用程序运行正常。如果需要的话,我愿意安装Apache并设置虚拟主机,但是我觉得我遗漏了一些东西/它过于复杂。 以下是侦听器的创建,应用程序的其余部分与处理请求/数据有关,因此不相关(尽管会在需要时发布)
// start listing on port
HttpListener listener = new HttpListener();
string url = "https://serverfqdn:8202/middleman/";
listener.Prefixes.Add(url);
try
{
listener.Start();
}
catch (Exception e)
{
Console.WriteLine("bruh i broke");
Console.WriteLine(e.Message);
}
现在,当我在https上列出的Ubuntu框中运行该应用程序并运行测试时,出现错误:“无法从传输连接中读取数据:现有连接已被远程主机强行关闭。” >
如前所述,如果它在http上列出,那么一切正常,我会得到适当的答复。