{
    "id": 1813,
    "date": "2024-12-26T12:37:05",
    "date_gmt": "2024-12-26T11:37:05",
    "guid": {
        "rendered": "https:\/\/wpmastertoolkit.com\/module\/interdire-les-ips-par-pays\/"
    },
    "modified": "2025-01-14T15:13:19",
    "modified_gmt": "2025-01-14T14:13:19",
    "slug": "interdire-les-ips-par-pays",
    "status": "publish",
    "type": "module",
    "link": "https:\/\/wpmastertoolkit.com\/fr\/module\/interdire-les-ips-par-pays\/",
    "title": {
        "rendered": "Interdire les IPs par pays"
    },
    "content": {
        "rendered": "<h1 class=\"wp-block-heading\">Contr\u00f4le d&rsquo;acc\u00e8s par IP selon les pays avec WPMasterToolKit<\/h1>\n\n\n\n<p>Le module <strong>Disallow Countries IP<\/strong> de WPMasterToolKit permet de restreindre ou d&rsquo;autoriser l&rsquo;acc\u00e8s \u00e0 votre site WordPress en fonction des pays d&rsquo;origine des utilisateurs. Cette fonctionnalit\u00e9 peut s&rsquo;av\u00e9rer utile pour des raisons de s\u00e9curit\u00e9, pour limiter le trafic \u00e0 certains pays ou pour bloquer des r\u00e9gions o\u00f9 vos services ne sont pas disponibles.<\/p>\n\n\n\n<p>Dans cet article, nous allons explorer ce module, ses avantages, son utilisation et les choix techniques qui le rendent unique.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Quel plugin peut remplacer le module Disallow Countries IP ?<\/h2>\n\n\n\n<p>Ce module peut remplacer des plugins comme :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>IP Geo Block<\/strong><\/li>\n\n\n\n<li><strong>Wordfence (pour les restrictions g\u00e9ographiques)<\/strong><\/li>\n\n\n\n<li><strong>Country IP Specific Redirect<\/strong><br>Ces outils sont souvent sp\u00e9cialis\u00e9s dans les restrictions g\u00e9ographiques mais peuvent \u00eatre encombrants et chargent des fonctionnalit\u00e9s inutiles. Avec WPMasterToolKit, seulement le module activ\u00e9 est charg\u00e9, ce qui optimise les performances.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Fonctionnalit\u00e9s cl\u00e9s du module Disallow Countries IP<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. <strong>Blocage ou autorisation des pays<\/strong><\/h3>\n\n\n\n<p>Le module vous permet de choisir une liste de pays autoris\u00e9s ou interdits :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Si la fonctionnalit\u00e9 est activ\u00e9e, seuls les utilisateurs des pays s\u00e9lectionn\u00e9s pourront acc\u00e9der au site.<\/li>\n\n\n\n<li>Si elle est d\u00e9sactiv\u00e9e, tous les pays auront acc\u00e8s sauf ceux sp\u00e9cifiquement list\u00e9s.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. <strong>Mise \u00e0 jour automatique de la base de donn\u00e9es GeoIP<\/strong><\/h3>\n\n\n\n<p>Le module s\u2019appuie sur la base de donn\u00e9es GeoLite2 de MaxMind pour identifier les pays en fonction des adresses IP. La mise \u00e0 jour de cette base se fait automatiquement chaque mois, pour garantir l&rsquo;exactitude des informations.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. <strong>Flexibilit\u00e9 et personnalisation<\/strong><\/h3>\n\n\n\n<p>Les administrateurs peuvent configurer facilement les param\u00e8tres depuis un menu d\u00e9di\u00e9 dans le tableau de bord WordPress. Gr\u00e2ce \u00e0 une interface intuitive, il est possible de :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ajouter ou supprimer des pays dans la liste.<\/li>\n\n\n\n<li>Activer ou d\u00e9sactiver les contr\u00f4les d&rsquo;acc\u00e8s IP.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4. <strong>Gestion des exceptions<\/strong><\/h3>\n\n\n\n<p>Certaines requ\u00eates sont automatiquement exempt\u00e9es pour \u00e9viter des dysfonctionnements :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Les bots l\u00e9gitimes comme Googlebot.<\/li>\n\n\n\n<li>Les appels AJAX internes ou les t\u00e2ches cron de WordPress.<\/li>\n\n\n\n<li>Les pr\u00e9visualisations Facebook et Twitter.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">5. <strong>Interface d&rsquo;erreur personnalis\u00e9e<\/strong><\/h3>\n\n\n\n<p>En cas de blocage, une page d&rsquo;erreur 403 (acc\u00e8s interdit) est affich\u00e9e. Les messages de cette page peuvent \u00eatre personnalis\u00e9s \u00e0 l\u2019aide d\u2019un filtre WordPress :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">apply_filters( 'wpmastertoolkit\/disallow_countries_ip\/error_page', $texts );\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Comment utiliser ce module ?<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Activation du module<\/strong><br>Rendez-vous dans l&rsquo;interface WPMasterToolKit et activez le module <strong>Disallow Countries IP<\/strong>.<\/li>\n\n\n\n<li><strong>Configuration des pays<\/strong>\n<ul class=\"wp-block-list\">\n<li>Acc\u00e9dez au menu <strong>Disallow Countries IP<\/strong> dans les param\u00e8tres WPMasterToolKit.<\/li>\n\n\n\n<li>S\u00e9lectionnez les pays \u00e0 bloquer ou autoriser \u00e0 l\u2019aide d\u2019une liste d\u00e9roulante.<\/li>\n\n\n\n<li>Activez ou d\u00e9sactivez la fonctionnalit\u00e9 selon vos besoins.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Sauvegarde des param\u00e8tres<\/strong><br>Apr\u00e8s avoir configur\u00e9 les restrictions, cliquez sur <strong>Enregistrer les modifications<\/strong> pour appliquer les param\u00e8tres.<\/li>\n\n\n\n<li><strong>Mise \u00e0 jour automatique<\/strong><br>Le plugin g\u00e8re automatiquement la mise \u00e0 jour de la base de donn\u00e9es GeoLite2. Il v\u00e9rifie les mises \u00e0 jour le premier mardi de chaque mois.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img alt=\"Interface WP, IP pays bloqu\u00e9s.\" fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"299\" src=\"https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-1024x299.png\" class=\"wp-image-4027\" srcset=\"https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-1024x299.png 1024w, https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-300x88.png 300w, https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-768x224.png 768w, https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-1536x448.png 1536w, https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131-18x5.png 18w, https:\/\/wpmastertoolkit.com\/wp-content\/uploads\/2024\/12\/image-131.png 1775w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Pourquoi avons-nous opt\u00e9 pour cette approche technique ?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. <strong>Performance et modularit\u00e9<\/strong><\/h3>\n\n\n\n<p>Ce module ne charge que les ressources n\u00e9cessaires lorsque le module est activ\u00e9, ce qui r\u00e9duit l&#8217;empreinte m\u00e9moire et am\u00e9liore les temps de chargement.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. <strong>Utilisation de GeoLite2<\/strong><\/h3>\n\n\n\n<p>La base GeoLite2 offre une reconnaissance des IP fiable et est r\u00e9guli\u00e8rement mise \u00e0 jour. En utilisant la biblioth\u00e8que <strong>GeoIp2\\Database\\Reader<\/strong>, nous pouvons extraire facilement les informations g\u00e9ographiques.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. <strong>Mise en cache des param\u00e8tres<\/strong><\/h3>\n\n\n\n<p>Les param\u00e8tres du module sont stock\u00e9s dans la base de donn\u00e9es WordPress via l&rsquo;option <code>update_option()<\/code>. Cela \u00e9vite des appels r\u00e9p\u00e9titifs inutiles.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. <strong>Compatibilit\u00e9 avec les proxys<\/strong><\/h3>\n\n\n\n<p>Le module int\u00e8gre des v\u00e9rifications pour d\u00e9tecter les utilisateurs derri\u00e8re des proxys comme Cloudflare ou Sucuri, garantissant une reconnaissance pr\u00e9cise des IP.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Documentation des filtres personnalis\u00e9s du module <strong>Disallow Countries IP<\/strong><\/h2>\n\n\n\n<p>Le module <strong>Disallow Countries IP<\/strong> de WPMasterToolKit offre plusieurs filtres personnalis\u00e9s qui permettent d\u2019adapter son comportement en fonction de vos besoins sp\u00e9cifiques. Voici une documentation rapide sur deux filtres cl\u00e9s :<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. <strong><code>wpmastertoolkit\/disallow_countries_ip\/error_page<\/code><\/strong><\/h3>\n\n\n\n<p>Ce filtre vous permet de personnaliser la page d&rsquo;erreur affich\u00e9e aux visiteurs bloqu\u00e9s par le module. Par d\u00e9faut, une page d&rsquo;erreur HTTP 403 est g\u00e9n\u00e9r\u00e9e avec un titre et un message standard. Gr\u00e2ce \u00e0 ce filtre, vous pouvez modifier le contenu pour refl\u00e9ter votre propre style ou votre message.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Exemple d&rsquo;utilisation :<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">add_filter( 'wpmastertoolkit\/disallow_countries_ip\/error_page', function( $texts ) {\n    $texts['title'] = __( 'Access denied', 'my-theme' );\n    $texts['message'] = __( 'Your country cannot access this site at this time.', 'my-theme' );\n    return $texts;\n});\n<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Param\u00e8tre<\/strong> : <code>$texts<\/code> est un tableau contenant deux cl\u00e9s :\n<ul class=\"wp-block-list\">\n<li><code>title<\/code> : le titre de la page (par d\u00e9faut : <em>Forbidden Access<\/em>).<\/li>\n\n\n\n<li><code>message<\/code> : le message affich\u00e9 (par d\u00e9faut : <em>You do not have permission to access this page<\/em>).<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>R\u00e9sultat attendu<\/strong> : La page d\u2019erreur sera affich\u00e9e avec le titre et le message personnalis\u00e9s.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">2. <strong><code>wpmastertoolkit\/disallow_countries_ip\/cloudflare_networks<\/code><\/strong><\/h3>\n\n\n\n<p>Ce filtre permet de modifier ou d\u2019ajouter des plages d\u2019adresses IP Cloudflare qui seront utilis\u00e9es pour d\u00e9tecter les IP r\u00e9elles des utilisateurs lorsqu&rsquo;un site utilise Cloudflare comme proxy. Par d\u00e9faut, le module utilise une liste pr\u00e9d\u00e9finie de plages IP Cloudflare.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Exemple d&rsquo;utilisation :<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">add_filter( 'wpmastertoolkit\/disallow_countries_ip\/cloudflare_networks', function( $networks ) {\n    $networks[] = '203.0.113.0\/24';\n    return $networks;\n});\n<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Param\u00e8tre<\/strong> : <code>$networks<\/code> est un tableau contenant une liste de plages d&rsquo;adresses IP au format CIDR.<\/li>\n\n\n\n<li><strong>R\u00e9sultat attendu<\/strong> : La plage IP ajout\u00e9e sera utilis\u00e9e pour identifier les utilisateurs derri\u00e8re Cloudflare.<\/li>\n<\/ul>\n\n\n\n<p>Ces filtres offrent une flexibilit\u00e9 importante pour adapter le module <strong>Disallow Countries IP<\/strong> \u00e0 vos besoins. Que ce soit pour personnaliser l&rsquo;exp\u00e9rience utilisateur ou ajuster la gestion des proxys, ces hooks simplifient le processus d\u2019int\u00e9gration avec votre site WordPress.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. <code>wpmastertoolkit\/disallow_countries_ip\/securi_networks<\/code><\/h3>\n\n\n\n<p>Le hook <strong><code>wpmastertoolkit\/disallow_countries_ip\/securi_networks<\/code><\/strong> permet d&rsquo;ajouter ou de modifier les plages d&rsquo;adresses IP utilis\u00e9es pour d\u00e9tecter les IP r\u00e9elles des utilisateurs lorsqu&rsquo;un site utilise le pare-feu <strong>Sucuri<\/strong> comme proxy ou CDN. Par d\u00e9faut, le module inclut une liste pr\u00e9d\u00e9finie des plages d&rsquo;IP connues de Sucuri.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Exemple d&rsquo;utilisation :<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"php\" class=\"language-php\">add_filter( 'wpmastertoolkit\/disallow_countries_ip\/securi_networks', function( $networks ) {\n    $networks[] = '192.0.2.0\/24'; \/\/ Exemple de plage IP\n    return $networks;\n});<\/code><\/pre>\n\n\n\n<p><strong>Explication des param\u00e8tres :<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>$networks<\/code><\/strong> : Il s&rsquo;agit d&rsquo;un tableau contenant les plages d&rsquo;adresses IP utilis\u00e9es par le pare-feu Sucuri au format <strong>CIDR<\/strong> (exemple : <code>192.88.134.0\/23<\/code>).<\/li>\n\n\n\n<li><strong>Retour attendu<\/strong> : Le tableau mis \u00e0 jour doit inclure toutes les plages d\u2019adresses IP que vous souhaitez consid\u00e9rer comme des proxys l\u00e9gitimes Sucuri.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Le module <strong>Disallow Countries IP<\/strong> de WPMasterToolKit offre une solution simple et efficace pour contr\u00f4ler l&rsquo;acc\u00e8s \u00e0 votre site en fonction de l&rsquo;origine g\u00e9ographique des utilisateurs. En rempla\u00e7ant plusieurs plugins complexes par une solution l\u00e9g\u00e8re et modulaire, ce module s&rsquo;inscrit dans la philosophie de performance et d&rsquo;efficacit\u00e9 de WPMasterToolKit.<\/p>\n\n\n\n<p>Si vous recherchez une solution rapide, s\u00e9curis\u00e9e et facile \u00e0 g\u00e9rer pour restreindre ou autoriser l&rsquo;acc\u00e8s \u00e0 votre site, ce module est l&rsquo;outil id\u00e9al. Profitez de la personnalisation et de la flexibilit\u00e9 qu&rsquo;il offre d\u00e8s aujourd&rsquo;hui.<\/p>\n\n\n\n<p><\/p>",
        "protected": false
    },
    "excerpt": {
        "rendered": "<p>Le module \u00ab\u00a0Disallow Countries IP\u00a0\u00bb de WPMasterToolKit offre une solution pour s\u00e9curiser votre site WordPress en contr\u00f4lant les adresses IP autoris\u00e9es ou interdites \u00e0 acc\u00e9der au contenu. Cette fonctionnalit\u00e9 permet de remplacer plusieurs plugins similaires en centralisant les r\u00e9glages au m\u00eame endroit, optimisant ainsi la gestion. Le module propose deux modes : le mode exclusif, qui limite l&rsquo;acc\u00e8s aux seules IP list\u00e9es, et le mode inclusif, qui exclut les IP list\u00e9es. Compatible avec Apache et Nginx, il ajuste automatiquement les configurations serveur pour assurer une protection efficace. Exploitez ce module pour renforcer la s\u00e9curit\u00e9 de votre site via une interface accessible depuis le tableau de bord WordPress.<\/p>",
        "protected": false
    },
    "featured_media": 0,
    "parent": 0,
    "template": "",
    "meta": {
        "_acf_changed": false,
        "_seopress_robots_primary_cat": "",
        "_seopress_titles_title": "S\u00e9curisez votre WordPress avec Disallow Countries IP",
        "_seopress_titles_desc": "S\u00e9curisez votre site WordPress facilement avec le module Disallow Countries IP de WPMasterToolKit, contr\u00f4le d'acc\u00e8s simplifi\u00e9 par IP.",
        "_seopress_robots_index": "",
        "_surecart_dashboard_logo_width": "180px",
        "_surecart_dashboard_show_logo": true,
        "_surecart_dashboard_navigation_orders": true,
        "_surecart_dashboard_navigation_invoices": true,
        "_surecart_dashboard_navigation_subscriptions": true,
        "_surecart_dashboard_navigation_downloads": true,
        "_surecart_dashboard_navigation_billing": true,
        "_surecart_dashboard_navigation_account": true
    },
    "class_list": [
        "post-1813",
        "module",
        "type-module",
        "status-publish",
        "hentry"
    ],
    "acf": [],
    "_links": {
        "self": [
            {
                "href": "https:\/\/wpmastertoolkit.com\/fr\/wp-json\/wp\/v2\/module\/1813",
                "targetHints": {
                    "allow": [
                        "GET"
                    ]
                }
            }
        ],
        "collection": [
            {
                "href": "https:\/\/wpmastertoolkit.com\/fr\/wp-json\/wp\/v2\/module"
            }
        ],
        "about": [
            {
                "href": "https:\/\/wpmastertoolkit.com\/fr\/wp-json\/wp\/v2\/types\/module"
            }
        ],
        "wp:attachment": [
            {
                "href": "https:\/\/wpmastertoolkit.com\/fr\/wp-json\/wp\/v2\/media?parent=1813"
            }
        ],
        "curies": [
            {
                "name": "wp",
                "href": "https:\/\/api.w.org\/{rel}",
                "templated": true
            }
        ]
    }
}