从http重定向到https时的.htaccess循环

时间:2018-08-17 10:02:19

标签: .htaccess

我有以下代码:

$arr = twprp_criteria_field();
for($i = 0; $i < count($arr); $i++){
  echo 'Id:' . $arr[$i]['id'] . " ";
  echo 'title:' . $arr[$i]['title'];
  // ...
}

第一次重定向将RewriteEngine On Options +FollowSymlinks RewriteBase / RewriteRule ^xyz xyz.php [PT] RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 重定向到www.example.com/xyz

这很好。

第二个有问题。 如果我输入www.example.com/xyz.php,它将创建一个无限循环以:

example.com

如果我输入https://example.com/example.com/example.com,它还会创建一个类似于上面的无限循环。

我想从以下位置重定向所有内容:

www.example.com http://example.com/...https://example.com/...

我在这里想念什么?

1 个答案:

答案 0 :(得分:0)

好像我在重定向之前没有声明RewriteCond%{SERVER_PORT} 80。