.htaccess 我需要在主域而不是子域上强制ssl

.htaccess 我需要在主域而不是子域上强制ssl,.htaccess,mod-rewrite,ssl,.htaccess,Mod Rewrite,Ssl,www.mydomain.com上的主站点使用SSL证书设置为安全站点 我需要创建一个不安全的子域() 我是InMotionHosting.com的主机。我在cPanel中创建了子域,并将其指向public_html/open(主站点位于public_html/mainsite)的文件夹,但当我尝试访问子域URL时,我在Chrome中遇到SSL错误,在IE中我被重定向到 我该如何解决这个问题 这是我的.htaccess文件: RewriteEngine on RewriteBase / Rewr

www.mydomain.com上的主站点使用SSL证书设置为安全站点

我需要创建一个不安全的子域()

我是InMotionHosting.com的主机。我在cPanel中创建了子域,并将其指向public_html/open(主站点位于public_html/mainsite)的文件夹,但当我尝试访问子域URL时,我在Chrome中遇到SSL错误,在IE中我被重定向到

我该如何解决这个问题

这是我的.htaccess文件:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

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

将规则更改为:

RewriteEngine on
RewriteBase /

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
这对我很有用:

<IfModule mod_rewrite.c>

RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} !^sub.example.com$
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

</IfModule>

谢谢你的建议。但是,这不再强制主域使用SSL,因此可以不安全地使用主站点。也许我不清楚这一点,但我需要www.mydomain.com始终保持安全,open.mydomain.com始终保持安全,决不>您是否有任何机会支持某个代理,否则第一条规则强制
www.mydomain.com
始终保持https。你还有其他规则吗?不,不是在代理后面,你给我的代码就是.htaccess文件中的所有内容。实际上,我要稍微修改一下。当我在浏览器中输入
www.mydomain.com
mydomain.com
时,它被强制使用https。但是当我输入
http://www.mydomain.com
它不是——它保持在不安全模式,我可以在不安全的站点中导航。这很令人困惑。您在浏览器中编写了
www.mydomain.com或mydomain.com,它被强制使用https
,然后在
http://www.mydomain.com
不是。不是
www.mydomain.com
http://www.mydomain.com
相同吗?
RewriteCond %{HTTP_HOST} !^(sub|lolo).example.com$