🚀 Як виправити помилку “PHP Max Input Vars Limit” в WordPress
Якщо ви створюєте або керуєте сайтом на WordPress і раптом зіткнулися з цією помилкою:
“Попередження: Max Input Vars limit reached”
або
“Збільшити max_input_vars до більшого значення”
…це означає, що ваш сервер блокує обробку PHP занадто великої кількості полів вводу – це часто спостерігається при збереженні великих меню, конструкторів сторінок (наприклад, Elementor або WPBakery) або при відправленні форм.
У цій розширеній статті ми розглянемо цю проблему:
- ✅ Що таке директива max_input_vars
- 🧠 Як вона впливає на роботу WordPress
- як це виправити різними методами (php.ini, .htaccess, wp-config, Nginx, cPanel і т.д.)
- 🔐 Кращі практики та міркування щодо безпеки
що таке max_input_vars?
max_input_vars – це директива PHP, яка обмежує кількість вхідних змінних, які PHP може приймати (через POST, GET і REQUEST). Це захищає сервер від атак на хешування, але також впливає на легітимні операції в CMS-платформах.
Значення за замовчуванням:
Якщо ви перевищуєте цей ліміт (наприклад, зберігаєте меню WordPress з 1000 елементів), PHP обриває введення, і WordPress мовчки не зберігає всі зміни.
коли ви зіткнетеся з помилкою
- Збереження великих навігаційних меню
- Збереження сторінок з великою кількістю полів форм
- Використання конструкторів сторінок зі складними макетами
- Плагіни, такі як WPML, Elementor, WooCommerce
🛠️ Виправлення помилки: 6 перевірених методів
✅ 1. Змінити php.ini (найкращий спосіб, якщо у вас є root або VPS доступ)
Це найчистіший спосіб змінити max_input_vars, якщо ви використовуєте власний сервер:
Крок 1: Знайдіть або створіть файл php.ini (залежить від сервера):
Замініть 8.1 на вашу версію PHP.
Крок 2: Знайдіть і відредагуйте директиву:
Крок 3: Перезапустіть веб-сервер:
або
✅ 2. Оновлення .htaccess (для користувачів Apache на віртуальному хостингу)
Якщо у вас немає доступу до php.ini, спробуйте відредагувати .htaccess в корені вашої установки WordPress:
⚠️ Це працює тільки якщо увімкнено mod_php. Деякі хости використовують PHP-FPM, де цей метод не працює.
✅ 3. Використовуйте wp-config.php (не завжди ефективно)
WordPress не підтримує перевизначення max_input_vars, але в деяких конфігураціях це може спрацювати:
Помістіть його над рядком з написом:
✅ 4. Змінити User php.ini або php_value в cPanel
Якщо ви використовуєте віртуальний хостинг з cPanel:
- Перейдіть до cPanel > Виберіть версію PHP > Параметри
- Знайдіть max_input_vars і збільште до 3000 або вище
- Збережіть і перевірте phpinfo() для підтвердження
✅ Працює миттєво - перезапуск не потрібен.
✅ 5. Використовуйте .user.ini (для PHP-FPM або CGI-середовищ)
Створіть або відредагуйте .user.ini у вашій кореневій папці WordPress:
Потім перезапустіть PHP (або зачекайте 5 хвилин, якщо хост застосує зміни автоматично).
✅ 6. Для серверів NGINX PHP-FPM
NGINX не використовує .htaccess, тому налаштовуйте PHP через пул FPM або php.ini.
Відредагуйте файл /etc/php/8.1/fpm/php.ini:
Потім перезапустіть:
як переконатися, що все працює
Створіть файл phpinfo.php у корені WordPress:
Доступ через браузер: https://yourdomain.com/phpinfo.php
Знайдіть max_input_vars і переконайтеся, що він оновлений.
не забудьте видалити файл після цього - він розкриває конфіденційну інформацію сервера.
🛡️ Кращі практики
| Рекомендація | Причина |
|---|---|
| Не встановлюйте max_input_vars рівним 999999 | Може призвести до DoS-уразливостей |
| Дотримуйтесь значення 3000-5000 | Достатньо для великих меню/побудовників сторінок |
| Слідкуйте за лімітами пам'яті | Великі вхідні змінні = більше використання пам'яті |
| Використовуйте phpinfo() або ini_get() для налагодження | Уникайте здогадок |
бонус: Збільшення інших пов'язаних лімітів
Іноді ця проблема супроводжується перевищенням інших лімітів:
Вони також можуть бути розміщені у файлах php.ini, .htaccess або .user.ini.
заключні думки
Розуміння та виправлення помилки max_input_vars у WordPress.Помилка max_input_vars є малопомітною, але потенційно руйнівною проблемою в WordPress, яка часто залишається непоміченою, доки не станеться щось критичне. Ця директива конфігурації PHP контролює максимальну кількість вхідних змінних (наприклад, полів форм або пунктів меню), які ваш сервер буде обробляти в одному запиті. Якщо цей ліміт занадто низький, він може непомітно перешкоджати частинам вашого веб-сайту зберігати зміни належним чином, особливо в складних середовищах.
Де з'являється проблема
Ця помилка зазвичай з'являється в наступних сценаріях:
Великі або вкладені меню WordPress: При створенні детальних структур меню може зберегтися лише частина меню, або зміни можуть зникнути після збереження.
- Багатомовні веб-сайти: Такі плагіни, як WPML або Polylang, значною мірою покладаються на форми з великою кількістю полів введення для кожної мови.
- Конструктори сторінок: Інструменти перетягування, такі як Elementor, WPBakery або Divi, можуть зіткнутися з проблемами при збереженні макетів з великою кількістю елементів або рядків.
- Налаштування теми або плагіна: Деякі теми і плагіни з багатими панелями конфігурації можуть не зберегти всі налаштування коректно, якщо перевищено ліміт.
- Що найгірше? Часто немає видимого повідомлення про помилку - зміни просто не застосовуються, і ви не знаєте, що пішло не так.



