在opensuse和CentOS中无法远程访问Mono httpllistener

本文关键字:远程访问 Mono httpllistener opensuse CentOS | 更新日期: 2023-09-27 18:02:02

我正在用vmware测试linux版本。

我从这里运行一个简单的样本

    // This example requires the System and System.Net namespaces.
public static void SimpleListenerExample(string[] prefixes)
{
    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes.
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    Console.WriteLine("Listening...");
    // Note: The GetContext method blocks while waiting for a request. 
    HttpListenerContext context = listener.GetContext();
    HttpListenerRequest request = context.Request;
    // Obtain a response object.
    HttpListenerResponse response = context.Response;
    // Construct a response.
    string responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    byte[] buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
    // Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length;
    System.IO.Stream output = response.OutputStream;
    output.Write(buffer,0,buffer.Length);
    // You must close the output stream.
    output.Close();
    listener.Stop();
}

prefixeshttp://192.168.10.132:8080/

它在ubuntu中运行良好,无论是本地guest还是远程host。

在opensue和CentOS的guest中也可以本地访问,但在host中无法打开,等待很长时间后,没有响应,然后超时

在opensuse和CentOS中无法远程访问Mono httpllistener

我明白了,这是因为防火墙默认是启用的。我需要允许我使用的端口