openshift配置http跳转https并且www域名跳转不带www域名的apache rewrite规则

不说原因直接开,需求就是搞了个https免费证书,要求所有http请求都跳转到https,并且www域名跳转到不到www的域名,比如请求www.lison.cc跳转到https://lison.cc,而请求lison.cc跳转到https://lison.cc,全站https嘛。

1.首先设置DNS. 我用的cloudflare的CDN,DNS设置看起来是这样的:

cloudflare为lison.cc做的的DNS设置

2.设置openshift你的application的alias。
默认的有lisonliou-osrd.rhcloud.com,然后再添加lison.cc,www.lison.cc,这是域名绑定?不是很清楚,我就是卡在这里好几个钟头。。。

3.设置转发规则。
我用的apache服务器,所以只需要修改.htaccess文件,添加如下行:

 

第一个rewrite规则是将带www(或者其他,因为已经做了泛解析)的网址跳转到https://aixiadianying.com;

第二个rewrite是将http请求定向到https,实现全站https,就是这样。

最后为业余时间做的站露个脸:爱下电影网 – 一个可以下载电影的网站~ !

Happy Holiday~

Apache反向代理Discuz地址有问题的解决方法

有机器A,机器B;

机器A拥有外网ip,机器B处于内网。

机器A运行apache,本地程序,开放80端口,并且作为代理服务器处理外部泛解析域名,例如bbs.lison.com。并且解析到机器B的端口8090。

机器B运行nginx,处理8090端口的web服务。

部署成功后,出现的问题是:访问bbs.lison.com之后,页面能打开,但是样式无法加载,查看源代码发现<base href=”http://机器B:8090″ />,依然是机器B的内网地址端口号。

这个问题困扰了我好几天,直到今天看到大神的文章:

Apache反向代理Discuz出现“您的请求来路不正确”解决办法

http://rayyn.net/2010/06/37.html