使用.htaccess强制SSL的问题

时间:2010-11-29 23:00:25

标签: apache .htaccess ssl

我有以下.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已检测到服务器正在以永远无法完成的方式重定向此地址的请求。”。

有人知道发生了什么事吗?我需要改变什么?

1 个答案:

答案 0 :(得分:1)

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