【问题标题】:Problem with forcing SSL using .htaccess使用 .htaccess 强制 SSL 的问题
【发布时间】:2010-11-29 23:00:24
【问题描述】:

我有以下 .htaccess 文件:

Order deny,allow
Deny from all
Allow from XX.XXX.XXX.XXX

RewriteEngine  on
RewriteBase    /

RewriteCond    %{REQUEST_FILENAME} !-f
RewriteCond    %{REQUEST_FILENAME} !-d
RewriteRule    . /index.php

RewriteCond    %{HTTPS} !=on
RewriteRule    ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]

应该:

  • 只允许从我的 IP 访问(数字更改为 X 以保护无辜者)
  • 将任何不是特定文件的请求发送到/index.php
  • 对整个域强制使用 https

据我所知,它与之前的项目相同,当然,该项目是在不同的托管服务提供商上进行的,但它的作用就像一个魅力。这一次它会导致一条消息“Firefox 检测到服务器正在以永远不会完成的方式重定向对该地址的请求。”。

有人知道发生了什么以及我需要更改什么吗?

【问题讨论】:

    标签: apache .htaccess ssl


    【解决方案1】:

    也许您的新托管服务提供商正在使用某种设置(如反向代理)来阻止设置 HTTPS 变量。您可以使用其他东西(例如 SERVER_PORT,或者可能是远程代理设置的标头,假设有)来确定请求是 HTTPS 还是 HTTP。

    【讨论】:

    • 谢谢劳伦斯,我不认为这是我的代码。我想我可能需要按照您的建议找到另一个解决方案。
    猜你喜欢
    • 2013-04-28
    • 2017-08-22
    • 2023-03-27
    • 2011-05-22
    • 2015-07-05
    • 2017-06-18
    • 2012-02-02
    • 2012-04-22
    相关资源
    最近更新 更多