【问题标题】:Generate a complete URL within a Yesod application在 Yesod 应用程序中生成完整的 URL
【发布时间】:2015-04-27 14:26:55
【问题描述】:

我的意思是例如

YC.getUrlRender >>= enact where
    enact renderURL = renderURL HomeR
例如,

将导致“/”,通常这就是您所需要的。但是,我正在尝试破解电子邮件验证,其中电子邮件还必须包含https://yesod.domain.com 位,以便用户可以单击链接来验证新帐户。实际上有可能获得那个位吗?例如,在我的部署中,Yesod 应用程序位于 nginx 之后,配置如下:

location / {
    proxy_pass http://127.0.0.1:3000;
}

Yesod 应用程序甚至会知道它是通过https://myvps.hosting.com 到达的吗?

也许答案是通过nginx传递信息,因此:

location / {
    proxy_pass http://127.0.0.1:3000?youEnteredVia=https://myvps.hosting.com;
}

虽然我想使用 $1 或其他东西来避免那个硬编码的 URL,而且我不知道如何在 Yesod 应用程序中获取值,但我确信 MS 的书在某处有信息。

【问题讨论】:

    标签: web-services url web nginx yesod


    【解决方案1】:

    这是使用 approot 类方法的全部目的,因为根据请求本身并不总是可以确定正确的应用程序根。您可能还想查看ApprootMiddleware

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-04
      相关资源
      最近更新 更多