我有一个在 HTTP 中运行的 Web 应用程序。不过,我想使用 CORS 测试在 HTTPS 上运行的 Web 服务。由于 HTTP 不允许 HTTPS 请求,因此我想在 Web 应用程序中设置代理,以便它显示为 HTTPS。如何在 Linux 中实现这种重定向?
答案1
我发现了devd
从https://github.com/cortesi/devd对于这种类型的调试/开发非常有帮助。这是一个实用程序,可以充当本地网络服务器以及反向代理,在这种情况下,后一个功能将特别有用。
它还可以方便地提供--crossdomain
设置 CORS 标头的选项Access-Control-Allowed: *
例如,将端口 443 上的 HTTPS 请求重定向到本地主机端口 8080 上的 HTTP 服务器:
# devd --tls --port 443 http://localhost:8080
(它会自动生成自签名证书并将其保存到〜/.devd.cert,如果它尚不存在)
答案2
正常情况是在您的应用程序和网络的其余部分之间设置反向代理。代理终止 SSL 连接,并与后端建立未加密的连接。
流行的选择包括 HAProxy、Nginx 和 Apache (mod_proxy)。例如,堆栈交换使用 HAProxy 终止 TLS/SSL。