首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mod_rewrite和htaccess将主域重定向到https,但将所有子域重定向到http

使用mod_rewrite和htaccess将主域重定向到https,但将所有子域重定向到http
EN

Stack Overflow用户
提问于 2015-01-11 00:32:11
回答 1查看 5.9K关注 0票数 0

The Details

我有一个商业主机鳄鱼account..not吹嘘..。这是一个免费的私有SSL和IP。我正在运行一个wordpress MU安装,它使用子域设置,并通过他们提供的插件进行域映射设置。

假设你对Worpress MU一无所知..。基本上,Wordpress MU允许您在一个Wordpress安装下创建多个自我托管的博客。我有一个通配符子域设置来捕获所有的sub.domain.com请求,Wordpress MU做了一些巫毒来将它重定向到正确的目的地。

私有SSL是免费的,所以我现在不打算使用通配符SSL,但我知道这是一个选项。也就是说,当我单击主域上的https到子域的任何链接时,https就会附着在URL上。

有人能帮我做以下事情吗?

(请注意:为了发布我的问题,我不得不在http(s)://和下面的www之间添加空格以中断链接)

对于主"blog“url,我希望示例www.domain.com和domain.com都重定向到安全的https,其结果是https:// www.domain.com

对于“通配符”子域“子博客”url,我希望示例sub.domain.com和https:// sub.domain.com将ssl重定向到http:// sub.domain.com。

代码示例将不胜感激,一个详细的(虚拟的)教程,以便我可以理解发生了什么将是很好的。我是mod_rewrite的新手,我的技能水平仅限于基本301重定向。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-11 00:57:33

您可以在根.htaccess中使用它。

代码语言:javascript
复制
RewriteEngine on 

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

# redirect to http subdomain
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^((?!www).+\.domain\.com)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27882723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档