Eskil Mjelva Saatvedt Asked: 2009-08-06 07:50:37 +0800 CST2009-08-06 07:50:37 +0800 CST 2009-08-06 07:50:37 +0800 CST 有没有办法使用 .htaccess 来阻止访问某个国家/地区? 772 有没有办法使用 .htaccess 来阻止访问某个国家/地区? 我被要求阻止我们的服务器允许从美国下载某个文件的请求。从任何其他国家/地区下载都可以。 有没有办法在 .htaccess 文件中执行此操作? .htaccess geolocation 6 个回答 Voted Hunter Morris 2009-08-06T07:54:41+08:002009-08-06T07:54:41+08:00 如果您使用的是 Apache,请查看mod_geoip。从他们的示例中,您可以使用以下内容对其进行配置: GeoIPEnable On GeoIPDBFile /path/to/GeoIP.dat SetEnvIf GEOIP_COUNTRY_CODE US BlockCountry # ... place more countries here Deny from env=BlockCountry Rob Hruska 2009-08-06T07:54:12+08:002009-08-06T07:54:12+08:00 我很确定你不可能完全有效地做到这一点。即使您确实找到了基于 IP 或提供商进行限制的方法,我仍然可以通过“允许”位置的代理服务器来获取文件。 Matthew Vines 2009-08-06T07:53:09+08:002009-08-06T07:53:09+08:00 可能有更可靠的方法,但您可以通过对请求者进行 IP 查找并拒绝那些美国 IP 来接近。 请注意,这远非完全证明,如果请求者有动机这样做,很容易绕过。 Martin Beckett 2009-08-06T07:54:43+08:002009-08-06T07:54:43+08:00 您可以以不同程度的可靠性从 IP 地址中检测国家/地区,然后在 apache 中使用 .htaccess 来阻止它。 请参阅Htaccess country block API中的示例 RC 2009-08-06T08:03:43+08:002009-08-06T08:03:43+08:00 您将需要使用地理智能数据提供程序。mod_geoip Apache 模块的数据(我相信)由 MaxMind 提供,但根据您的预算和需求,它们是更准确/可靠的解决方案。 数据提供者包括: Digital Envoy - 被认为是行业领导者 最大思维 夸瓦 如果您需要过滤或更改更细粒度数据的内容,所有提供商都有多个级别的可用数据,包括 IP 域、连接速度、时区等。根据提供者的不同,有多种方法可以访问数据,无论是加载到您自己的数据库中的平面文件、通过 API 的内部服务器还是 Web 服务。 您需要确保获得定期(即每周)更新的内容,因为 IP 的更改位置非常频繁。 John Gardeniers 2010-02-02T12:38:38+08:002010-02-02T12:38:38+08:00 这是一个老问题,但万一再次出现 - 您需要考虑可以在世界其他地方使用代理来访问您可能无法直接访问的站点和文件。因此,这样的限制几乎毫无意义,很可能需要考虑法律问题。
如果您使用的是 Apache,请查看mod_geoip。从他们的示例中,您可以使用以下内容对其进行配置:
我很确定你不可能完全有效地做到这一点。即使您确实找到了基于 IP 或提供商进行限制的方法,我仍然可以通过“允许”位置的代理服务器来获取文件。
可能有更可靠的方法,但您可以通过对请求者进行 IP 查找并拒绝那些美国 IP 来接近。
请注意,这远非完全证明,如果请求者有动机这样做,很容易绕过。
您可以以不同程度的可靠性从 IP 地址中检测国家/地区,然后在 apache 中使用 .htaccess 来阻止它。
请参阅Htaccess country block API中的示例
您将需要使用地理智能数据提供程序。mod_geoip Apache 模块的数据(我相信)由 MaxMind 提供,但根据您的预算和需求,它们是更准确/可靠的解决方案。
数据提供者包括:
Digital Envoy - 被认为是行业领导者
最大思维
夸瓦
如果您需要过滤或更改更细粒度数据的内容,所有提供商都有多个级别的可用数据,包括 IP 域、连接速度、时区等。根据提供者的不同,有多种方法可以访问数据,无论是加载到您自己的数据库中的平面文件、通过 API 的内部服务器还是 Web 服务。
您需要确保获得定期(即每周)更新的内容,因为 IP 的更改位置非常频繁。
这是一个老问题,但万一再次出现 - 您需要考虑可以在世界其他地方使用代理来访问您可能无法直接访问的站点和文件。因此,这样的限制几乎毫无意义,很可能需要考虑法律问题。