5

以下是我对 SSL 的一些疑问。

RewriteEngine On
RewriteCond %{SERVER_PORT} 80 
RewriteCond %{REQUEST_URI} somefolder 
RewriteRule ^(.*)$ https://www.domain.com/somefolder/$1 [R,L]
  1. 以上是强制所有内容通过 HTAccess 转到 SSL 的代码。有没有办法可以将此代码限制为特定的 IP 地址。我只想对我的 IP 地址强制使用 SSL,以便我可以使用新的 SSL 链接彻底测试该站点,并在将其发布到实时站点之前查看(确保)一切正常。仅使用我的 IP 进行测试会容易得多。

  2. SSL 会干扰任何获取/发布吗?意思是……如果我使用上面的代码,并且有人在页面上……并且他们提交了一个表单,这将迫使他们进入 SSL,这是否会被视为重定向并清除任何 post/get 变量?我只是想提前找出它是否会弄乱我正在运行的任何东西。

  3. 你们有没有人遇到过强制使用 SSL 的情况,然后网站出现很多问题,无法正常工作?

4

2 回答 2

2

如果您想确保您的站点与 HTTPS 配合良好,请关闭纯 HTTP(假设它适用于整个服务器),或使用 Apache Httpd 指令(在主配置中.htaccess或在主配置中)使需要通过 HTTPS 提供的页面返回通过纯 HTTP 访问它们时出现错误(例如 404)。您可以使用Deny from xxxxxxx.

不要依赖mod_rewrite或类似的方式将纯 HTTP 请求重定向到其 HTTPS 等效项。这充其量只会隐藏问题并导致错误的安全感。

这样做的原因是,即使使用重定向,初始请求在被重定向之前也是明确的:确保所有引用https://在使用它们之前都使用 URI。您可以在此答案中找到更多详细信息。

于 2012-04-10T15:47:00.317 回答
1

导航到:http ://httpd.apache.org/docs/2.0/ssl/ssl_faq.html#relative

如何在相对超链接中在 HTTP 和 HTTPS 之间切换?

于 2012-04-10T16:49:24.437 回答