WordPress требует специальной настройки при использовании Cloudflare. Без правильной конфигурации в логах сервера будет записываться IP Cloudflare вместо реального IP посетителя.
Проблема с IP-адресами
Без настройки WordPress видит все запросы с IP Cloudflare (~103.21.244.0/22 и другие). Это ломает геолокацию, антиспам, security плагины.
Решение 1: Официальный плагин Cloudflare
Установите плагин «Cloudflare» (официальный) → подключите к вашему аккаунту через API Token. Плагин автоматически восстанавливает реальные IP.
Решение 2: Вручную в wp-config.php
// Восстановить реальный IP от Cloudflare
if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
}
Оптимальные настройки Cloudflare для WordPress
| Настройка | Рекомендуемое значение |
|---|---|
| SSL/TLS Mode | Full (Strict) |
| Always Use HTTPS | ✅ On |
| Auto Minify | JS + CSS + HTML |
| Rocket Loader | Тест перед включением |
| Bot Fight Mode | ✅ On |
| Cache Level | Standard |
Автоочистка кэша при публикации
Официальный плагин Cloudflare автоматически очищает кэш страниц при:
- Публикации / обновлении поста
- Изменении настроек сайта
- Обновлении плагинов
WooCommerce + Cloudflare
# Cache Rule — обход кэша для WooCommerce
Conditions:
- Cookie contains: woocommerce_cart_hash
- OR Cookie contains: woocommerce_session_
- OR Path contains: /cart
- OR Path contains: /checkout
- OR Path contains: /my-account
Cache: Bypass
⚠️ Без этих исключений для WooCommerce разные пользователи могут видеть чужую корзину.
✅ Добавьте в wp-config.php:
define('FORCE_SSL_ADMIN', true); при использовании Cloudflare SSL.