0

我已使用以下 htaccess 文件重定向所有页面以使用 https:

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

有没有办法可以排除主页?那么除了 www.mydomain.com 和 mydomain.com 之外的所有内容都使用 https 加载?

4

1 回答 1

0

您可以尝试在之前添加此行RewriteRule

RewriteCond %{REQUEST_URI} !^/$

编辑

如果上述方法不起作用,请尝试以下方法:

RewriteCond %{REQUEST_URI} !^/(index\.php|)$
RewriteCond %{HTTPS} off 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L]

笔记:

  1. 我假设您正在运行 PHP 应用程序服务器,因此index.php文档根目录中有一个文件将在有人请求时提供/;否则,index\.php用您的 DirectoryIndex 文件替换(例如index\.html,不要忘记反斜杠来转义点)
  2. 我在重写指令中添加了一个 [L](最后一个)标志,以使重写引擎在重写过程中在找到匹配项时停止。要了解更多信息,请参阅 Rewriterule 参考(Apache 2.0 链接
于 2012-05-28T08:33:01.803 回答