Node.js Windows Azure上托管的Ghost博客的URL重写规则
我正在尝试使用Windows Azure上托管的Ghost建立博客 我已经使用GitHub上创建的预配置repo部署并设置了所有内容 一切都按预期进行,我在自己的域名上配置了记录,这些记录在您导航到该站点时起作用 我遇到的问题是*.azurewebsites.net域名出现在搜索引擎结果中,当您导航(例如,到www.mysite.com/rss)时,它会关闭自定义域名,并将其替换为内置的azurewebsites one 查看web.config,有两条重写规则Node.js Windows Azure上托管的Ghost博客的URL重写规则,node.js,azure,url-rewriting,ghost,Node.js,Azure,Url Rewriting,Ghost,我正在尝试使用Windows Azure上托管的Ghost建立博客 我已经使用GitHub上创建的预配置repo部署并设置了所有内容 一切都按预期进行,我在自己的域名上配置了记录,这些记录在您导航到该站点时起作用 我遇到的问题是*.azurewebsites.net域名出现在搜索引擎结果中,当您导航(例如,到www.mysite.com/rss)时,它会关闭自定义域名,并将其替换为内置的azurewebsites one 查看web.config,有两条重写规则 <rules>
<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>
我写了一篇关于重写规则的帖子,该规则将“阻止”*.azurewebsites.net域,我将该规则放入默认两个域上方的规则集中,这几乎让我达到了目的。rss链接现在可以工作了
现在,当我浏览到www.mysite.com/ghost(https上的管理页面)时,问题出现了。它抱怨有太多的重写规则
我可以理解为什么会这样,但我无法找到一个组合规则来满足使用自定义域启动webapp并能够导航到站点内其他页面的要求。我很确定这是显而易见的。根据我的理解,我认为你已经创建了一个CNAME记录,将你的自定义域名与Azure网站域名绑定。但是,我不知道您是否在新门户网站上的Azure WebApp的所有设置中设置了自定义域和SSL
。作为参考,您可以参考以确定
根据Gareth文章中的url重写规则,它似乎适用于所有url。我认为问题可能是由代码本身造成的,该代码使用Ghost blog的config.js
文件中的websiteUrl
等配置变量呈现URL,请参阅
希望有帮助,并等待您的反馈。如有任何问题,请随时通知我。您是否在DNS上创建CNAME记录以绑定azure域*.azurewebsites.net
?您是否在Azure new poral的所有设置中设置了自定义域和SSL
(请参阅)?您是否使用Ghost Azure的config.js
文件(请参阅)中的自定义域修改websiteUrl
?我在config.js中编辑了代码,只指向“www.mysite.com”,现在一切都正常了(不需要web.config中的额外规则)。唯一的问题是当我导航到管理门户(即SSL)时,我得到一个连接不是私有错误-但我可以继续,它可以工作。这是一个小麻烦,但这是朝着正确方向迈出的一大步-谢谢!