当 ssl 位于负载均衡器中时,在 apache 中强制从 https 重定向到 HTTP

当 ssl 位于负载均衡器中时,在 apache 中强制从 https 重定向到 HTTP

我们正在使用 CISCO 硬件负载平衡器来强制实施 SSL(https)。现在我需要强制某些 URL 始终为 http,而所有其他 URL 为 https。

例如 encrypt_no_need.php 总是需要是 http 即如果用户尝试加载

https://server.com/encrypt_no_need.php这需要强制加载

http://server.com/encrypt_no_need.php

以及与此直接相反的所有其他页面..(始终在 https 上)

如何做到这一点?在哪里控制它?

答案1

您可以通过两种方式执行此操作。让负载均衡器将 https 请求定向到不同的端口或在请求中插入一个标头,指定已使用 https。(这可能已经到位)然后,您需要修改执行脚本以检查端口或标头,而不是请求是否通过 https 发送,并根据需要重定向到 http 或 https url。

答案2

您也可以在 vhost 级别对特定文件使用重写。请尝试检查 apache 的 mod_rewrite 以了解更多详细信息。

相关内容