我刚刚在我的服务器上设置了 SSL。我希望对 http 站点的旧请求转发到 https。在具有重写条件和 Apache2 中的重写规则的浏览器中效果很好。但是,我们的一个合作伙伴有一台向某个 URL 发出请求的服务器,而该站点似乎没有正确地重写这些 URL。
我尝试使用 curl 重新创建此行为。当我使用 https(即 curl https://......)发出 url 请求时,它可以正常工作并按预期完成请求。当我使用 http(即 curl http://.......)发出 url 请求时,它返回 html 文本,说明此页面已被重定向到 https://.....。当我在浏览器中执行 http 或 https 请求时,它会正确重写。
更新:我应该在这里说这仅仅是对观察到的行为的诊断。根据下面的评论,您可以将 curl 设置为跟随重定向,但我不认为向服务器发出请求(我试图适应)的机器能够以这种方式跟随重定向。
进一步更新:如果有人知道发送“重定向通知”的位置(在 apache 日志中),请告诉我。然后我将能够判断哪些请求没有被重定向,并且能够判断上面的“卷曲诊断”是否非法。谢谢!
任何建议表示赞赏,并感谢您的所有帮助。如果您需要任何说明,或者是否有任何 Apache 配置或我应该提供的进一步诊断,请告诉我。