小编Jer*_*emy的帖子

使用HttpPlatformHandler在IIS上托管的Suave应用程序关闭连接

我正在尝试使用HttpPlatformHandler(版本1.2)在IIS(IIS 10.0)中运行基本的Suave应用程序.

当我有它返回一个单一的WebPart,如

(OK "Hello World")
Run Code Online (Sandbox Code Playgroud)

该应用程序在IIS中运行良好,我可以通过http:// localhost/testapp(testapp是默认网站下的应用程序的名称)的名称向它发出请求.

但是,如果我为WebPart使用更复杂的东西,例如

let app =
    choose
        [ GET >=> choose
            [ path "/hello" >=> OK "Hello GET"
              path "/goodbye" >=> OK "Good bye GET" ]
          POST >=> choose
            [ path "/hello" >=> OK "Hello POST"
              path "/goodbye" >=> OK "Good bye POST" ] ]
Run Code Online (Sandbox Code Playgroud)

该网站启动但我无法通过应用程序名称访问它.但我仍然可以通过端口到达它.

当我按名称命中应用程序时,我收到HTTP 503.2(坏网关)响应.

应用程序从HttpPlatformHandler执行的FAKE脚本启动.

对于上下文,这是启动应用程序的FAKE脚本:

#r "./tools/FakeLib.dll"
#r "Suave.dll"

open System
open Suave
open Suave.Successful
open Fake
open System.Net
open Suave.Filters
open Suave.Sockets
open Suave.Operators
open System.IO …
Run Code Online (Sandbox Code Playgroud)

iis f# suave

5
推荐指数
1
解决办法
666
查看次数

标签 统计

f# ×1

iis ×1

suave ×1