【问题标题】:Rewrite HTTP to HTTPS on Mojolicious在 Mojolicious 上将 HTTP 重写为 HTTPS
【发布时间】:2015-12-09 05:25:21
【问题描述】:

我正在 Hypnotoad 上运行 Mojolicious 应用程序。监听443端口,可以通过https访问。

如何将所有 HTTP 请求转发到 HTTPS?

【问题讨论】:

    标签: perl mojolicious


    【解决方案1】:

    根据post,您的服务器仅监听 443 端口。所以你应该添加另一个应用程序来处理 80 端口。

    在 hypnotoad 前面添加 nginx 或 apache 并在那里执行(重定向、重写)的最佳方式。

    但如果你不想拥有 nginx,你可以编写 Mojolicious 应用程序 它监听 two ports 并有钩子 before_dispatch 处理所有请求并仅更改重定向方案。

    如果您愿意,我可以尝试编写这样的最小示例。

    更新。我决定加example

    【讨论】:

      【解决方案2】:

      你不能,至少不能直接。虽然您可以使用 iptables 或类似的方法将端口 80 转发到 443,但实际上这不起作用,因为浏览器不希望对纯 HTTP URI 进行 SSL 握手。您必须在端口 80 上运行一个简单的 Web 应用程序(可能带有单独的 Hypnotoad 或类似的),它通过重定向到 HTTPS 来回答每个请求——可能是某个登录页面或与请求相同的 URI,只是方案发生了变化。

      【讨论】:

        猜你喜欢
        • 2014-09-20
        • 2014-03-04
        • 2012-02-28
        • 2012-07-18
        • 2011-06-02
        • 2011-09-15
        • 2018-08-17
        • 2011-06-30
        • 1970-01-01
        相关资源
        最近更新 更多