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

无代码, 亚速尔群岛
无代码, 加那利群岛
无代码, 马德拉

特殊情况:欧盟的一部分 https://en.wikipedia.org/wiki/Special_member_state_territories_and_the_European_Union#Special_cases_in_Europe

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 返回欧盟

欧盟、欧盟

4

1 回答 1

2

不确定它是否完成了您的列表,但GDPR 适用于所有EEA国家,包括那些不在欧盟的国家,即冰岛、列支敦士登和挪威(IS、LI、NO)。此外,Maxmind 可能会为某些欧洲 IP 返回“EU”。

于 2018-05-23T23:56:54.397 回答