.htaccess - GeoIP 的欧盟特定 ISO-1366-1 国家/地区代码
问题描述
随着 GDPR 的临近,我编写了一个愚蠢的脚本来阻止所有欧盟国家访问网站。问题是我找不到详尽的欧盟国家代码列表。
有一个要点可以让我开始,但是,有些评论尚未实施,因此尚不清楚完整列表的外观。
https://gist.github.com/henrik/1688572
有没有人得到欧盟国家代码的完整列表,包括最外围地区、特殊情况以及我可能错过的任何其他内容?
到目前为止,我已经设法将其放在一起。
欧盟 28
AT,奥地利
BE,比利时
BG,保加利亚
HR,克罗地亚
CY,塞浦路斯
CZ,捷克共和国
DK,丹麦
EE,爱沙尼亚
FI,芬兰
FR,法国
DE,德国
GR,希腊
HU,匈牙利
IE,爱尔兰,共和国 (EIRE)
IT , 意大利
LV, 拉脱维亚
LT, 立陶宛
LU, 卢森堡
MT, 马耳他
NL, 荷兰
PL, 波兰
PT, 葡萄牙
RO, 罗马尼亚
SK, 斯洛伐克
SI, 斯洛文尼亚
ES, 西班牙
SE, 瑞典
GB, 英国(英国)
最外围地区:欧盟 (OMR) 的一部分 https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Outermost_regions
GF, 法属圭亚那
GP, Guadeloupe
MQ, Martinique
ME, 黑山
YT, Mayotte
RE, Réunion
MF, Saint Martin
无代码, 亚速尔群岛
无代码, 加那利群岛
无代码, 马德拉
GI,直布罗陀
AX,奥兰群岛
No Code, Büsingen am Hochrhein
No Code, Campione d'Italia and Livigno
No Code, Ceuta and Melilla
No Code, UN Buffer Zone in Cyprus
No Code, Helgoland
No Code, Mount Athos
海外国家和地区 (OCT) https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Overseas_countries_and_territories
PM, Saint Pierre and Miquelon
GL, Greenland
BL, Saint Bartelemey
SX, Sint Maarten
AW, Aruba
CW, Curacao
WF, Wallis and Futuna
PF, French Polynesia
NC, New Caledonia
TF, French Southern Territories
AI, Anguilla
BM, Bermuda
IO, British印度洋领地
VG、维尔京群岛、英属
KY、开曼群岛
FK、福克兰群岛(马尔维纳斯)
MS、蒙特塞拉特
PN、皮特凯恩
SH、圣赫勒拿
GS、南乔治亚岛和南桑威奇群岛
TC、特克斯和凯科斯群岛
微状态(不确定这些如何适应) https://en.wikipedia.org/wiki/Microstates_and_the_European_Union
AD, Andorra
LI, Liechtenstein
MC, Monaco
SM, San Marino
VA, Vatican City
其他(不确定这些是否适合)
JE、Jersey
GG、Guernsey
GI、Gibraltar
欧盟
欧盟,欧盟(不确定这是否有用,是否保持最新?)
从这个列表中,我最终得到了以下 .htaccess 脚本来阻止欧盟访问站点。
我应该补充一点,我无意使用它,这只是配置 apache mods 和搞乱 GeoIP/MaxMind 的一个很好的练习。
虽然这种情况很荒谬,但我仍然想正确地实现它,它可能有一天对某事或某人有用。
编辑 显然不是那么荒谬,今天我已经看到大约十几家公司已经阻止了欧盟用户 o_O。
在这种特殊情况下,代码应涵盖 GDPR 适用的欧盟国家代码。我错过了什么吗?
.htaccess
MaxMindDBEnable On
MaxMindDBFile DB /opt/GeoIP/GeoLite2-Country.mmdb
MaxMindDBEnv MM_COUNTRY_CODE DB/country/iso_code
SetEnvIf MM_COUNTRY_CODE ^(AT|BE|BG|HR|CY|CZ|DK|EE|FI|FR|DE|GR|HU|IE|IT|LV|LT|LU|MT|NL|PL|PT|RO|SK|SI|ES|SE|GB|GI|AX|PM|GL|BL|SX|AW|CW|WF|PF|NC|TF|AI|BM|IO|VG|KY|FK|MS|PN|SH|GS|TC|IS|LI|NO|EU) BlockCountry
Deny from env=BlockCountry
更新
GDPR 也适用于欧洲经济区 (EEA) 的部分地区
IS,冰岛
LI,列支敦士登
NO,挪威
MaxMind 可以为某些欧盟 IP 返回欧盟
欧盟、欧盟
解决方案
不确定它是否完成了您的列表,但GDPR 适用于所有EEA国家,包括那些不在欧盟的国家,即冰岛、列支敦士登和挪威(IS、LI、NO)。此外,Maxmind 可能会为某些欧洲 IP 返回“EU”。
推荐阅读
- mongodb - 为 MongoDB 创建 2dIndex
- json - org.hibernate.PropertyAccessException:无法设置字段值
- javascript - 点符号对象到多维对象
- hugo - Hugo“观看时出错:readEvents() 中的短读” - 不必要的页面刷新
- python - 带有扩展名的python方法移动
- angular - 业力和茉莉花:如何在构造函数中使用@Inject InjectionToken 测试组件
- java - Java 中的消费者是什么?
- python - 遍历excel的不同选项卡,提取数据并放入数据框
- git - git push 失败 - 致命:远程端意外挂断
- vue.js - BootstrapVue - 数字表单输入在 Firefox 中不起作用