0

最近我们遇到的问题是,我们在 Azure 上的 Web 角色获得了以前与 thepiratebay 跟踪器关联的 IP 地址。这意味着大约有 5 000 000 个 404 请求。我相信 DNS 服务器的问题。

我想做的是过滤掉指向与我们网站不同的主机的请求。是否可以通过中的 hostHeader 属性来实现这一点

<ServiceDefinition name="AB.AzureSite" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2014-06.2.4">
  <WebRole name="AllBlacksdotcom" vmsize="Medium">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1"  hostHeader=""/>
        </Bindings>
      </Site>
    </Sites>

我们希望完全避免请求访问我们的网站(例如针对主机 track.thepiratebay.org 的请求)。这可能吗?

4

2 回答 2

2

没有办法完全skip /turn off处理不需要的请求。但是,使用该hostHeader属性将使您在一些权衡下非常接近。在此处查看文档

至少有一个问题:

  • 当您使用主机标头时,您的站点将回复带有此标头的请求。

  • 不能hostHeader属性中使用通配符。

该属性直接应用于host headerIIS 中网站的绑定属性。因此 - 不支持通配符。

因此,只有描述您定义的内容的请求hostHeader才会登陆您的网站。然而,其余的请求无论如何都会落在Default Web SiteIIS 上。

Default Web Site您可以通过启动任务关闭(通过启动任务更改 IIS 设置的一些示例)。

于 2015-02-11T08:42:47.993 回答
2

如果您处于主机标头级别,则流量已经到达您的角色实例。在此之前阻止流量的唯一方法是使用端点上的访问控制列表 (ACL)。

如果问题仅基于您碰巧最终获得的特定 IP 地址,您可以删除然后重新部署您的云服务包,这将分配一个新的 IP 地址。

于 2015-02-11T12:36:51.707 回答