Почему возникает проблема с лицензиями после смены домена в WooCommerce
При переносе сайта WooCommerce на новый домен или изменение URL магазина часто возникают ошибки активации лицензий плагинов и тем. Это связано с тем, что многие лицензионные системы жестко привязывают ключи к домену или URL сайта, чтобы предотвратить пиратство и несанкционированное использование.
Часто встречающиеся симптомы:
- Ошибка активации лицензии с сообщением "Домен не совпадает" или "Лицензия недействительна";
- Невозможность получить обновления плагина или темы;
- Проблемы с функционалом, зависящим от лицензии.
Диагностика проблемы: как понять, что лицензия заблокирована из-за смены домена
Для точного выявления причины следует выполнить следующие шаги:
- Проверить в админке WooCommerce или плагина статус лицензии — обычно отображается подробное сообщение об ошибке.
- Открыть консоль браузера на странице активации лицензии и проверить сетевые запросы на ошибки (например, 403, 401, или специфичные ответы сервера лицензирования).
- Провести тест активации лицензии на старом и новом домене (если возможно), чтобы убедиться, что именно смена домена вызывает сбой.
- Проверить настройки лицензионного сервера, если используется собственный сервер лицензий, что домен корректно передается и разрешен.
Пошаговое решение проблемы с лицензиями после смены домена
Рассмотрим практическое решение на примере стандартной лицензии с привязкой к домену и WooCommerce:
1. Проверка и обновление записи домена в лицензионном сервере
Если вы используете собственный лицензионный сервер (например, WooCommerce License Manager или кастомное решение), необходимо обновить домен в базе данных лицензий. Пример SQL-запроса для обновления домена:
UPDATE wp_licenses SET domain = 'newdomain.com' WHERE domain = 'olddomain.com';Если используется сторонний сервис лицензирования — войдите в панель управления и обновите привязанный домен вручную.
2. Очистка кэша и повторная активация лицензии на новом домене
На новом сайте выполните сброс кэша плагина, а также серверного кэша (если используется). В админке WooCommerce зайдите в раздел лицензий и деактивируйте старую активацию, затем активируйте заново с новым доменом.
3. Автоматизация смены домена в лицензиях с помощью WP-CLI
Для массовой замены лицензий можно использовать WP-CLI. Команда для поиска и замены домена в базе данных:
wp search-replace 'olddomain.com' 'newdomain.com' --skip-columns=guid --dry-runПосле проверки результата уберите --dry-run для выполнения замены.
Проверка результата после внедрения
Проверьте:
- Статус лицензии в админке WooCommerce — должна показываться как активная без ошибок.
- Возможность получать обновления плагина или темы.
- Отсутствие ошибок при использовании функций, зависящих от лицензии.
- Сетевые запросы к лицензионному серверу проходят успешно (статус 200).
Частые ошибки и как их исправить
- Ошибка «Домен не совпадает» после обновления записи: Проверьте, не кешируется ли старая информация на стороне сервера лицензионного сервиса или CDN.
- Лицензия считается активной на старом домене: Удостоверьтесь, что деактивировали лицензию на старом сайте, если система ограничивает количество активаций.
- Неправильный URL в настройках WordPress: Проверьте значения
siteurlиhomeчерезwp-config.phpили в базе данных (wp_options), они должны соответствовать новому домену. - Проблемы с SSL: Если новый домен не поддерживает HTTPS, а лицензионный сервер требует защищенное соединение, активация может проваливаться.
Практические советы по безопасности и производительности при работе с лицензиями и доменами
- Используйте HTTPS на новом домене для корректной работы лицензионных запросов.
- Настройте правильные заголовки CORS и разрешения API, если лицензии проверяются через REST API.
- Регулярно делайте резервные копии базы данных перед массовыми изменениями домена.
- Для крупных проектов автоматизируйте процесс смены домена через WP-CLI и скрипты, чтобы избежать ошибок.
- Контролируйте количество активаций лицензий — если плагин поддерживает ограничение по количеству доменов, своевременно отзывайте старые лицензии.
Сравнение способов решения проблемы с лицензиями после смены домена
| Метод | Описание | Плюсы | Минусы |
|---|---|---|---|
| Ручное обновление в лицензионном сервере | Вход в панель и правка домена в лицензиях | Простой, не требует кода | Затратно при большом количестве лицензий |
| Массовая замена через WP-CLI | Автоматическая замена домена в базе данных | Быстро, масштабируемо, подходит для миграций | Требует аккуратности, опыт работы с WP-CLI |
| Полностью новая генерация лицензий | Отмена старых и выдача новых ключей | Чистое решение, исключает ошибки | Требует поддержки пользователей, может создать неудобства |