Іноді замість реальної IP-адреси клієнта ви можете побачити 127.0.0.1 або якусь іншу неправильну IP-адресу клієнта в панелі адміністратора Magento 2. Це може бути пов'язано з проксі-серверами, такими як Varnish, Cloudflare, Sucuri.net, , які можуть бути ввімкнені для вашого магазину Magento 2.
Щоб вирішити проблему з неправильною IP-адресою, вам потрібно:
1. Створіть новий файл у каталозі M2:
app/etc/XIP/di.xml
2. Вставте код:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Framework\HTTP\PhpEnvironment\RemoteAddress">
<arguments>
<argument name="alternativeHeaders" xsi:type="array">
<item name="x-client-ip" xsi:type="string">HTTP_X_REAL_IP</item>
<item name="x-cf-connecting-ip" xsi:type="string">HTTP_CF_CONNECTING_IP</item>
<!-- <item name="x-cf-mfcustom-ip" xsi:type="string">SOME_CUSTOM_SERVER_KEY</item> -->
</argument>
</arguments>
</type>
</config>
3. Збережіть файл і запустіть компіляцію з ін'єкцією залежностей, використовуючи команду CLI:
php bin/magento setup:di:compile
4. Якщо це не допоможе, вам потрібно використовувати інші значення замість " SOME_CUSTOM_SERVER_KEY " та розкоментуйте рядок. Щоб отримати правильне значення, вам потрібно створити файл test.php у вашій папці Magento з кодом:
<?php
echo '<pre>';
var_dump($_SERVER);
та виконати цей скрипт у браузері (URL: https://mydomain.com/test.php). Мета полягає у визначенні правильного ключа, який зберігає IP-адресу клієнта, вам потрібно знайти вашу IP-адресу.