fan 发表于 2025-11-27 18:07:50

【已解决】想问下服务器端如何同时监听80和443端口

本帖最后由 fan 于 2025-12-15 12:23 编辑

如题,服务器端如和同时监听80和443两个端口,让http和https都能正常访问,最好给个简单的例子,谢谢

朕的 发表于 2025-11-27 19:40:16

搞2个实例对象?

创世魂 发表于 2025-11-27 20:29:20

应该是创建两个。
不过没啥意义啊,一般也不会这么干。都是让http重定向到https

<火山程序 类型 = "通常" 版本 = 1 />

类 启动类 <公开 基础类 = 程序类>
{
    变量 HTTP服务 <类型 = HTTP服务器类>
    变量 HTTPS服务 <类型 = HTTP服务器类>
    变量 可关闭 <类型 = 可关闭服务器类>

    方法 启动方法 <公开 类型 = 整数>
    {
      变量 引擎 <参考 类型 = Gin引擎类>
      HTTP服务.地址 = ":8080"// 监听端口
      HTTPS服务.地址 = ":443"
      引擎 = Gin引擎类.取默认引擎 ()// 取出默认引擎
      引擎.注册GET2 ()
      {

      }
      HTTP服务.置处理程序 (引擎.HTTP处理程序接口)
      HTTPS服务.置处理程序 (引擎.HTTP处理程序接口)
      启动协程 ()
      {
            HTTP服务.监听并服务 ()
      }
      启动协程 ()
      {
            HTTPS服务.监听并服务TLS ()
      }
      可关闭.等待关闭 ()// 阻止服务器自动关闭
      返回 (1)
    }

    方法 可关闭服务器类_被关闭 <接收事件 类型 = 整数 注释 = "检测到收到中断信号(Ctrl+C)后,将触发本事件,在本事件下处理服务器被关闭时所需的操作.">
    参数 来源对象 <类型 = 可关闭服务器类 注释 = "提供事件产生的具体来源对象">
    参数 标记值 <类型 = 整数 注释 = "用户调用\"挂接事件\"命令时所提供的\"标记值\"参数值,非此方式挂接事件则本参数值固定为0.">
    {
      如果 (来源对象 == 可关闭)
      {
            HTTP服务.正常关闭 (协程环境.创建主环境 ())
            HTTPS服务.正常关闭 (协程环境.创建主环境 ())
      }
      返回 (0)
    }
}

fan 发表于 2025-11-27 20:50:06

创世魂 发表于 2025-11-27 20:29
应该是创建两个。
不过没啥意义啊,一般也不会这么干。都是让http重定向到https



感谢大佬,那要是重定向怎么写呢?
页: [1]
查看完整版本: 【已解决】想问下服务器端如何同时监听80和443端口