Apache 共享托管站点中仅一个站点的SSL htacces重写规则

Apache 共享托管站点中仅一个站点的SSL htacces重写规则,apache,.htaccess,rewrite,Apache,.htaccess,Rewrite,我在Godaddy有两个共享Linux的站点,一个是root,另一个位于root的子目录中。让我们把它们分别称为Site-A和Site-B,Site-B位于Site-A之外的子目录中。一切正常 我刚刚为Site-a安装了一个SSL证书,它可以正常工作。我想对Site-A上的所有流量使用https,我在根级别的.htaccess文件中实现了以下内容: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https:

我在Godaddy有两个共享Linux的站点,一个是root,另一个位于root的子目录中。让我们把它们分别称为Site-A和Site-B,Site-B位于Site-A之外的子目录中。一切正常

我刚刚为Site-a安装了一个SSL证书,它可以正常工作。我想对Site-A上的所有流量使用https,我在根级别的.htaccess文件中实现了以下内容:

   RewriteEngine On
   RewriteCond %{HTTPS} off
   RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
这在Site-A上非常有效。但是,它会导致Site-B获得无效证书错误/警告。因此,我在.htaccess中禁用了此功能,目前不重定向任何内容

我的问题是-如何创建rewriteCond,以便只选择站点A?与此相关,对于这样的测试项目,什么是最佳实践,因为我的测试环境中没有证书


提前感谢

我能够修复:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} ^/Site-A/?
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

我仍然有一个问题,我想写一个规则来将Site-B从规则中排除,但是我一直在尝试不同的事情,仍然无法让它正常工作。我能够用RewriteCond%{REQUEST\u URI}^/Site-a/?