所需行为
我有一个GoDaddy域名,我正在使用OpenShift进行托管。
我希望以下内容成立:
a)用户输入www.mysitename.com
>用户看到mysitename.com
b)用户输入www.mysitename.com/about.html
>用户看到mysitename.com/about.html
c)用户输入mysitename.com
或mysitename.com/about.html
,他们也会看到该网址。
d)总结一下,www
前缀永远不会显示在网站的任何地方。
约束
OpenShift托管没有静态IP,因此无法在GoDaddy中调整A record
。
OpenShift应用的格式为http://appname-username.rhcloud.com
。
您可以使用以下内容在GoDaddy中设置cname:
www > appname-username.rhcloud.com
这意味着该网站可以www.mydomain.com
访问,但不能访问mydomain.com
。
建议的解决方案
该主题有几篇帖子提出以下建议,但由于多种原因不足以解决问题:
use a subdomain即blog.mydomain.com
use forwarding and masking(导致相对链接导致网址保持不变)
问题
有人能想到满足上述期望行为的另一种解决方案吗?
或者我是否需要更改为允许"裸露cname记录的注册商"?
相关帖子
https://stackoverflow.com/questions/18431034/godaddy-domain-pointing-to-openshift-hosting
Naked domain with Openshift
How do I add an alias for a naked domain with OpenShift?
修改
此博客文章总结了该方案:
http://blog.cloudflare.com/zone-apex-naked-domain-root-domain-cname-supp
我可以注册CloudFlare来解决此问题吗?
我之前没有使用它,也不知道它是如何工作的。
答案 0 :(得分:40)
<强>解决方案强>
01) Sign up to cloudflare
02)设置这些cname规则:
mydomain.com > appname-username.rhcloud.com
(这将使用'cname flattening')
www > mydomain.com
03)设置页面规则:
http://www.mydomain.com/* > http://mydomain.com/$1
04)在OpenShift中将别名设置为mydomain.com
05)确保GoDaddy DNS记录没有设置任何有冲突的cname
或A record
。
06)让它在一夜之间煮沸,所有原始的所需行为应该正常工作。
答案 1 :(得分:7)
要获取您的域名(使用“www”和“不使用”),要成功指向您的OpenShift别名,不要“屏蔽”或“转发”,请参阅本教程我写道:
适用于CNAME Flattening。
答案 2 :(得分:0)