【发布时间】:2016-01-17 20:11:50
【问题描述】:
我正在尝试使用托管在 Windows Azure 上的 Ghost 建立博客。
我已经使用AzureWebApps 在 GitHub 上创建的预配置存储库部署并设置了所有内容。
一切都按预期工作,我已经在我自己的域名上配置了记录,这些记录在您导航到该站点时正在工作。
我遇到的问题是 *.azurewebsites.net 域名出现在搜索引擎结果中,当您导航(例如,访问 www.mysite.com/rss)时,它会切换出自定义域名并将其替换为内置的 azurewebsites 之一。
查看web.config,有两条重写规则
<rules>
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}"/>
</rule>
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="index.js"/>
</rule>
</rules>
我发现一个名为 Gareth 的小伙子发表了一篇关于重写规则的帖子,该规则将“阻止”*.azurewebsites.net 域,我将此规则放入默认两个规则集之上,这让我明白了差不多好了。 rss 链接现在可以使用了。
当我导航到 www.mysite.com/ghost(这是 https 上的管理页面)时,现在出现了问题,它抱怨重写规则太多。
我知道为什么会出现这种情况,但我无法找出规则组合来满足使用自定义域启动 web 应用程序并能够导航到站点内的其他页面。我很确定这是显而易见的。
【问题讨论】:
-
您是否在 DNS 上创建 CNAME 记录来绑定 azure 域
*.azurewebsites.net?您是否在Azure新Poral的All settings设置Custom Domains and SSL(请参考azure.microsoft.com/en-us/documentation/articles/…)?您是否使用 Ghost-Azure 的config.js文件(参见 github.com/AzureWebApps/Ghost-Azure/blob/master/config.js)中的自定义域修改了websiteUrl?
标签: node.js azure url-rewriting ghost