我有一个 Rails 应用程序,其中包含一些必须使用 HTTPS/SSL 保护的 URL,以及一些必须通过 HTTP 访问的 URL。
我正在使用 Thin,并以 --ssl 标志开头意味着它只支持 HTTPS,并且不处理任何 HTTP 请求。我正在使用 force_ssl 在特定 URL 上强制使用 ssl。据我了解,我需要以某种方式修改 Apache。
如何让 HTTP 和 HTTPS 在我的(本地)开发环境中工作?
我有一个 Rails 应用程序,其中包含一些必须使用 HTTPS/SSL 保护的 URL,以及一些必须通过 HTTP 访问的 URL。
我正在使用 Thin,并以 --ssl 标志开头意味着它只支持 HTTPS,并且不处理任何 HTTP 请求。我正在使用 force_ssl 在特定 URL 上强制使用 ssl。据我了解,我需要以某种方式修改 Apache。
如何让 HTTP 和 HTTPS 在我的(本地)开发环境中工作?
我记得不可能在一个站点上运行 https 和 http - 一开始它们正在侦听不同的端口,因此实际上您正在考虑将您的内容分成两个不同的部分,一个用于 http 站点,另一个用于对于 https。您可以将两个站点指向同一个应用程序(因此两者的主目录相同),但如果您选择这样做,则需要非常小心,以确保您检查受保护的文件是否只能通过 HTTPS 访问,并且很容易意外引入安全问题。好处是您的资产可以在两个位置都可用,这样您就不必弹出有关安全区域中不安全内容的警告等等。如果您需要足够的安全性来证明 HTTPS 的合理性,那么值得了解两种访问单个位置的方式所带来的风险。另外,我记得(自从我使用这个已经有几年了,所以有人可能会纠正我)在常规和安全区域之间不会保留任何客户端身份验证,因为浏览器将它们视为两个不同的站点.