htaccess将主域http重定向到https w / out重定向共享主机上的域

时间:2016-05-18 23:20:14

标签: .htaccess redirect mod-rewrite https

我搜索了该网站,并认为我可能找到了可用于我的问题的代码,但它没有用。

我想将我的主域名http重定向到https(也包括任何形式的网址类型www。没有www。,http://www,http://,甚至只包含没有www或http的域名。 ),同时也不影响我在我的主目录中共享相同主机的其他域(因为SSL我只用于主域,但未在其他域上使用)。

目前,我有代码将我的主要重定向到https,但它会使我的其他域名在同一主机帐户上,也会重定向到https。 然后我发现代码不影响其他域而不是重定向到https,但是它影响了我的主域,也没有重定向到https,它只会重定向到https,如果使用www。或http,但不会在没有www的情况下重定向。

这非常令人沮丧,因为我非常想尝试这种类型的代码,所以我不知道我在做什么,并且肯定可以使用这些帮助。我的Godaddy托管将无助于提供基本重定向代码的链接,这对于其他域共享托管没有帮助,也没有用于在没有www等的情况下键入域名。我希望这是有道理的。

提前谢谢。

编辑可能的FIX: 好吧,我的代码可能看起来有点不稳定,我确定它可能需要清理并删除可能的重复内容,但这就是我刚从本网站上发现的其他代码产品中修补的内容,和其他人一起在其他地方找到了,我认为它可能有效。我确信有一种更简洁的格式化方法,但目前它似乎正在发挥作用。

# redirect http to https Domain   
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} www.yoursite.com [OR,NC]
RewriteCond %{HTTP_HOST} yoursite.com
RewriteRule (.*)  https://yoursite.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.yoursite.com [NC]
RewriteRule ^(.*)$ http://yoursite.com/$1 [L,R=301]

# redirect to http subdomain 
RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} ^((?!www).+\.yoursite\.com)$ [NC] 
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]

0 个答案:

没有答案