Iis 如何通过自定义域重定向或重写来访问Azure blob存储文件,而不产生浏览器安全警报?
这是我昨天提问的后续内容 目标是通过我们的自定义域在google上访问和排名blob存储文件,例如: 这是一个新的网站,所以没有必要从旧的链接重定向的关注 例如,在“contoso.com/product1”上的html文件中,有一个内部链接Iis 如何通过自定义域重定向或重写来访问Azure blob存储文件,而不产生浏览器安全警报?,iis,dns,azure-storage,url-redirection,azure-storage-blobs,Iis,Dns,Azure Storage,Url Redirection,Azure Storage Blobs,这是我昨天提问的后续内容 目标是通过我们的自定义域在google上访问和排名blob存储文件,例如: 这是一个新的网站,所以没有必要从旧的链接重定向的关注 例如,在“contoso.com/product1”上的html文件中,有一个内部链接 <a href="/docs/product1-specs.pdf">product 1 specs</a> 其中“contoso.com”是由Azure应用程序服务托管的自定义域 其中“contoso1.blob.core.
<a href="/docs/product1-specs.pdf">product 1 specs</a>
其中“contoso.com”是由Azure应用程序服务托管的自定义域
其中“contoso1.blob.core.windows.net”是Azure存储帐户“contoso1”
其中“/docs/product1 specs.pdf”表示存储在Azure存储中的容器“docs”中的blob文件“product1 specs.pdf”
这是一个由四部分组成的问题:
问题第1部分:什么是SEO友好且适当的技术方法来实现此内部链接并从Azure存储检索blob?当然,作为外部资源获取的外部链接contoso.com/docs/product1-specs.pdf也需要是有效的可检索url
是:
a) 将存储帐户的自定义域设置为子域assets.contoso.com,然后执行url重写/重定向到contoso.com/docs/*
b) 将存储帐户的自定义域设置为contoso.com,然后执行url重写/重定向到contoso.com/docs/*
c) 不一样的东西
我不想在assets.contoso.com上为一个单独的网站主持和管理排名——我希望将blob组织在“docs”容器中,在线显示时就像是一个名为“docs”的文件夹一样
问题第2部分:我创建了一个名为“iprobesolutions”的测试Azure存储帐户,并根据此屏幕截图将自定义域设置为iprobesolutions.com:
按此顺序执行以下步骤是否正确:
1) 在Azure存储帐户中,将iprobesolutions.com设置为自定义域iprobesolutions.com
2) 根据屏幕截图为iprobesolutions.com设置dns记录,如下所示:
以及将iprobesolutions.com指向iprobesolutions.blob.core.windows.net的DNS配置
3) 最后设置URL重写配置
或者我只需要URL重写配置,而不必在Azure存储中设置自定义域
问题第3部分:
对于URL配置部分,无论是作为步骤3还是作为单个步骤完成,请查看此问题和另一个来源,以下两个来源中的哪一个是IIS 8.5的正确web.config重定向,两者之间的区别是什么?如前所述,由于这是一个新网站,所以不需要维护旧链接。我不清楚对于我们的特定用例,我们需要重定向还是重写
目标是让iprobesolutions.com/docs/product1-specs.pdf成为规范名称(而不是Azure blob名称)
问题第4部分:由于iprobesolutions1.blob.core.windows.net被强制作为HTTPS连接,是否通过我们的HTTP网站将其转换为HTTP连接?这将导致一些浏览器发出错误的安全警报,如果是这样,既然iprobesolutions.com是一个静态营销网站,那么有什么解决方案可以避免这些误报,而不会突然被迫购买TSL证书以强制HTTPS连接到iprobesolutions.com
感谢您花时间阅读,我希望有人能从他们面对与我类似情景的经历中插话 对于初学者,您不能将根域同时映射到应用程序服务和存储帐户。我已经在你的另一个帖子中回复了
另外,请注意,谷歌要求所有网站使用HTTPS,否则您的网站将受到处罚。还有别的事情要考虑。 根据来自的评论,我将尝试分别重新发布IIS问题第3部分。我已决定在MS Server 2016通过IIS 10.0进入GA之前,使用https设计azure存储和我们的子域/域的使用。从目前为止我找到的信息来看,在IIS 8.0中尝试这一点,对于一个IIS/DNS初学者来说,将其拼凑起来似乎既复杂又耗时。因此,现在我们将把docs文件夹作为我们站点的子文件夹,并继续使用http,直到技术和资源可用,使其更容易过渡。
<rule name="redirect-docs" stopProcessing="true">
<match url="docs/(.*)"/>
<action type="Redirect" url="https://iprobesolutions1.blob.core.windows.net/docs/{R:1}"></action>
</rule>
<rule name="docs redirection" stopProcessing="false">
<match url="docs/(.*)" ignoreCase="true" />
<action type="Redirect" url="https://iprobesolutions.com/docs/{R:1}" redirectType="Permanent" appendQueryString="true" logRewrittenUrl="true" />
</rule>