在 Windows Azure 的子文件夹下共享 link 托管 Ghost 博客的问题
Share link issue hosting Ghost blog under subfolder on Windows Azure
我已经通过 azure marketplace 建立了一个幽灵博客,这应该是从 https://github.com/felixrieseberg/Ghost-Azure
点击 deploy to azure 的等价物
假设我在:theblog.azurewebsites.net/
我希望它在 https://www.mycustomdomain.com/blog 并且我在另一个应用程序服务中有主站点,假设在 mainsite.azurewebsites.net/ 这个站点mycustomdomain.com DNS 都设置了证书。
在此站点中,我在 web.config
中进行了重写
<rule name="Reverse Proxy to blog" stopProcessing="true">
<match url="^blog(.*)" />
<action type="Rewrite" url="https://theblog.azurewebsites.net/blog/{R:1}" />
</rule>
目前我正在尝试在暂存站点中正确执行此操作,因此我正在 https://mainsite-staging.azurewebsites.[=62= 查看博客]/
上面的重写成功地向我显示了在 theblog.azurewebsites.net 上托管的博客,而无需更改浏览器中的 url。在博客中,我还将 websiteUrl 应用程序设置为 https://www.mycustomdomain.com.au/blog,因此我的规范 url 在博客文章中是正确的。
遗留问题
- 如果我点击博客中的徽标,link 将转到 https://theblog.azurewebsites.net 而不是 https://mainsite-staging.azurewebsites.net/blog 或 https://www.mycustomdomain.com/blog
- 主页 link,即使在导航设置中指定为 https://www.mycustomdomain.com/blog link 正在访问 https://theblog。azurewebsites.net
- twitter和facebook的分享link是基于分享https://theblog.azurewebsites.net
我在互联网上搜索了很久...
我回答:
原来还有一个 websiteUrlSSL 应用程序设置未在自述文件中提及。
我也只需要设置这个。
在您的 web.config
中,您可以尝试设置您的自定义域 https://www.mycustomdomain.com/blog/{R:1}
而不是 Azure Web 应用程序 Url。应该将 URL 重写为您的自定义域并通过 DNS 服务器。
还有剩下的问题,我觉得应该跟ghost配置有关。请仔细检查您是否在 ghost 应用程序中设置了正确的配置,如 Custom Domain Setup
中所述
原来还有一个 websiteUrlSSL 应用程序设置未在自述文件中提及。
我也刚好需要设置这个。
在你阅读我的回答之前
- 我将我的服务器设置在 apache 而不是 Azure 上,所以我不确定 Microsoft Azure 中的配置
- 您需要访问您的 Ghost 博客站点的文件
- 我的回答是关于 Ghost 应用程序的配置而不是 Azure 系统配置
回答
- 使用您喜欢的任何编辑器打开位于 /path/to/ghost/config.js 的文件
- 找到行 production 并且在它下面你应该有一个 url:http://yourdomain.com 将它修改为你想要的URL
- 在这种情况下,您应该要求您的托管服务提供商 Azure 重新启动 Ghost 的节点 js 应用程序(如果您想使用 SSH 方法,您可以访问 A2Hosting tutorial 但是因为它使用的是终端,所以我不使用这种方法,如果你的命令有误,它可能会破坏你的服务器)
- 我查看了共享功能的设置,它似乎是基于 post URL 所以如果在更改 URL 部分的配置后它不能立即工作告诉我
最后我不能在重写规则上帮助你,因为我不熟悉 IIS 或 Microsoft Azure
我已经通过 azure marketplace 建立了一个幽灵博客,这应该是从 https://github.com/felixrieseberg/Ghost-Azure
点击 deploy to azure 的等价物假设我在:theblog.azurewebsites.net/
我希望它在 https://www.mycustomdomain.com/blog 并且我在另一个应用程序服务中有主站点,假设在 mainsite.azurewebsites.net/ 这个站点mycustomdomain.com DNS 都设置了证书。
在此站点中,我在 web.config
中进行了重写<rule name="Reverse Proxy to blog" stopProcessing="true">
<match url="^blog(.*)" />
<action type="Rewrite" url="https://theblog.azurewebsites.net/blog/{R:1}" />
</rule>
目前我正在尝试在暂存站点中正确执行此操作,因此我正在 https://mainsite-staging.azurewebsites.[=62= 查看博客]/
上面的重写成功地向我显示了在 theblog.azurewebsites.net 上托管的博客,而无需更改浏览器中的 url。在博客中,我还将 websiteUrl 应用程序设置为 https://www.mycustomdomain.com.au/blog,因此我的规范 url 在博客文章中是正确的。
遗留问题
- 如果我点击博客中的徽标,link 将转到 https://theblog.azurewebsites.net 而不是 https://mainsite-staging.azurewebsites.net/blog 或 https://www.mycustomdomain.com/blog
- 主页 link,即使在导航设置中指定为 https://www.mycustomdomain.com/blog link 正在访问 https://theblog。azurewebsites.net
- twitter和facebook的分享link是基于分享https://theblog.azurewebsites.net
我在互联网上搜索了很久...
我回答: 原来还有一个 websiteUrlSSL 应用程序设置未在自述文件中提及。
我也只需要设置这个。
在您的 web.config
中,您可以尝试设置您的自定义域 https://www.mycustomdomain.com/blog/{R:1}
而不是 Azure Web 应用程序 Url。应该将 URL 重写为您的自定义域并通过 DNS 服务器。
还有剩下的问题,我觉得应该跟ghost配置有关。请仔细检查您是否在 ghost 应用程序中设置了正确的配置,如 Custom Domain Setup
中所述原来还有一个 websiteUrlSSL 应用程序设置未在自述文件中提及。
我也刚好需要设置这个。
在你阅读我的回答之前
- 我将我的服务器设置在 apache 而不是 Azure 上,所以我不确定 Microsoft Azure 中的配置
- 您需要访问您的 Ghost 博客站点的文件
- 我的回答是关于 Ghost 应用程序的配置而不是 Azure 系统配置
回答
- 使用您喜欢的任何编辑器打开位于 /path/to/ghost/config.js 的文件
- 找到行 production 并且在它下面你应该有一个 url:http://yourdomain.com 将它修改为你想要的URL
- 在这种情况下,您应该要求您的托管服务提供商 Azure 重新启动 Ghost 的节点 js 应用程序(如果您想使用 SSH 方法,您可以访问 A2Hosting tutorial 但是因为它使用的是终端,所以我不使用这种方法,如果你的命令有误,它可能会破坏你的服务器)
- 我查看了共享功能的设置,它似乎是基于 post URL 所以如果在更改 URL 部分的配置后它不能立即工作告诉我
最后我不能在重写规则上帮助你,因为我不熟悉 IIS 或 Microsoft Azure