目标是让网站的每一页(减去一个文件夹)重定向到 https。我发现以下内容不会那样做。一个文件夹包含一个子域。我们称它为 mahogany.com。
编辑:修改规则
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^www.site1\.mobi [NC,OR]
RewriteCond %{HTTP_HOST} ^site1\.mobi [NC,OR]
RewriteCond %{HTTP_HOST} !^mahogany\.com [NC]
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
如果有人在他们的浏览器中输入site1.mobi
or www.site1.mobi
,在文档根目录 htaccess 中带有上述内容的 apache 将不会重定向。
以上有什么问题?mahogany.com 的行是否需要排除它?
默认的逻辑运算符
RewriteCond
是“and”;HTTP_HOST
不可能两者都是,所以条件永远不会满足。尝试这个:
另外,您提到了一个目录异常,但我没有在其中看到一个异常。您可以添加一个额外的
RewriteCond
或通过更改您的RewriteRule
条件: