GDPR对知道什么违规行为的人处以百万美元的罚款,这太疯狂了。在PHP中,有没有一种简单的免费解决方案可用于我的个人网站?我不需要跟踪人,但是我至少想知道谁在访问谁,例如我想知道浏览器,操作系统,组织。我当然愿意阻止所有欧盟访客,但是我知道许多人将他们的浏览器设置为英语,因此按语言进行阻止是无效的。

作为一个不赚钱的简单网站的非律师和维护者,我认识到我永远不会完全理解GDPR,也永远不会有资金来不断更新它。只有大公司才能负担得起所需的时间,精力和金钱。因此,我需要一种简单的机制来阻止欧盟用户,否则,我将不得不采取一种保守的方法,即不收集访客数据。

这项GDPR法律威胁要因不遵守法规而导致经济丧生的人,但是绝大多数人都不知道其模糊的规则真正需要什么。这是一条有利于拥有资源的大公司的法律,是对小公司和个人的攻击。

最佳答案

首先,最好先阅读合法权益-https://ico.org.uk/for-organisations/guide-to-the-general-data-protection-regulation-gdpr/legitimate-interests/when-can-we-rely-on-legitimate-interests/,然后再问您从用户那里收集个人数据的法律依据是什么?

与您的问题有关,实际上有可能通过nginx和GeoIP数据库实现。

为nginx安装GeoIP数据库:

apt-get install geoip-database-contrib -y

更新您的nginx配置(在server {} block之外):
# Block the EU continent from accessing the site

geoip_country /usr/share/GeoIP/GeoIP.dat;
geoip_city /usr/share/GeoIP/GeoLiteCity.dat;
map $geoip_city_continent_code $allow_visit {
   default 1;
   EU 0;
}

server {}块中,禁用EU用户的日志记录并返回403:
# Disable logging for EU users
access_log /var/log/nginx/access.log combined if=$allow_visit;
# Block and return 403 error message to EU users
default_type text/plain;
if ($allow_visit = 0) {
        return 403 'You are prohibited from visiting this website due to GDPR compliance requirements.';
    }

重新启动nginx
service nginx restart

归功于https://medium.com/@jacksonpalmer/gdpr-for-side-projects-blocking-all-eu-traffic-with-nginx-in-3-simple-steps-136ddd8078a4

关于php - 由于GDPR封锁了所有欧盟访客,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50429323/

10-12 03:13