Вопрос или проблема
Я поддерживаю сайт на WordPress на GoDaddy для клиента, и они стали получать ошибку “ссылка истекла”, когда сохраняли пост. Это не происходит, когда я загружаю файл. Однако я получаю ошибку “http error”, когда пытаюсь загрузить файл.
Я провел некоторые исследования, и все, кто испытывает эту ошибку, кажется, находят решение, обновив файлы конфигурации PHP для разрешения более крупных загрузок, более длительных временных интервалов ввода и т. д. Это, похоже, не сработало. Я прикрепил информацию phpinfo ниже на всякий случай.
Из того, что я узнал, кажется, это проблема с Nonces, но клиенты не обновляли ни один плагин и не обновляли WordPress. Ничего не должно было измениться, и у меня недостаточно опыта, чтобы понять, что здесь происходит.
Вот что я сделал:
- Отключил плагины
- Сменил темы
- Обновил конфигурацию PHP, чтобы отразить изменения ниже
- Обновил PHP до 7.2
Есть идеи?
ПРАВКА:
Когда я обновляю ключи аутентификации и соли (от здесь), это работает один раз, а затем перестает работать.
ПРАВКА2:
Я выяснил, что виноватая тема (Jupiter 6). Однако, после деактивации, ситуация все равно происходит, пока мои куки не будут очищены, и я не выйду и снова не войду в систему. Обновление и повторная установка темы, похоже, не решили проблему. На новой установке WordPress тема работает хорошо.
У меня также такие же проблемы, это происходит не только при обновлении постов, но и когда вы пытаетесь обновить свой профиль.
Временное решение:
- Выйдите из панели WordPress.
- Очистите или удалите все куки.
- Зайдите снова, не забудьте отметить “Запомнить меня”.
Это, похоже, решает проблему, но так как куки “Запомнить меня” истекают через 15 дней с даты вашей регистрации. Вам снова нужно будет выполнить все вышеперечисленные шаги.
Я думаю, что дело в хостинге Godaddy, а не в наших плагинах, темах или браузере.
У вас возникают проблемы с классическим редактором? Он по умолчанию открывает вкладку текста, и иконки белые.
Ответ или решение
Ошибка "Ссылка истекла" в WordPress при обновлении записей: подробное руководство
Ошибки в WordPress могут вызывать напряжённость у владельцев сайтов, и "Ссылка истекла" при обновлении записей не является исключением. Эта проблема часто возникает на хостинг-платформах, таких как GoDaddy. В этом руководстве мы рассмотрим причины её возникновения и предложим практические решения для устранения.
Причины возникновения ошибки
-
Проблемы с временными параметрами: Ошибка "Ссылка истекла" может быть связана с настройками, отражающими время выполнения скриптов и срок действия токенов безопасности (Nonces), используемых для защиты от атак.
-
Конфигурация PHP: При недостаточно настроенных параметрах для загрузки файлов и выполнения скриптов может возникнуть ошибка. Например,
max_execution_time
,upload_max_filesize
, иpost_max_size
должны быть настроены должным образом. -
Кэширование и куки: Проблемы с куками могут влиять на аутентификацию пользователей, создавая ситуацию, когда токены безопасности истекают слишком быстро. Это может происходить, если параметры
remember me
не используются правильно или кэш браузера мешает созданию новой сессии. -
Конфликт тем или плагинов: Как вы уже заметили, пользовательская тема Jupiter 6 может быть виновником. Конфликты между темами или плагинами могут нарушать работу WordPress и вызывать ошибки аутентификации.
Рекомендации по устранению ошибки
-
Обновление конфигурационных файлов PHP:
Убедитесь, что настройки вphp.ini
соответствуют следующим значениям:max_execution_time = 300 upload_max_filesize = 64M post_max_size = 64M memory_limit = 256M
Перезагрузите сервер после внесения изменений.
-
Проверка настроек Nonces:
Если при обновлении ключей и солей ошибка исчезает на короткое время, возможно, токены безопасности неправильно рассчитаны. Попробуйте добавить следующий код в файлfunctions.php
вашей темы:add_filter('nonce_life', function () { return 86400; // Увеличьте время жизниNonce до 24 часов });
-
Очистка кэша и куков:
Как временное решение, можно продолжать очищать куки и выходить из системы, но это неудобно для пользователя. Рассмотрите использование плагина для управления кэшем, который поможет оптимизировать работу сайта. -
Тестирование с отключением тем и плагинов:
Как вы уже делали, отключите все плагины и переключитесь на стандартную тему, чтобы исключить конфликты. Затем по одному активируйте плагины или тему Jupiter 6, чтобы определить источник проблемы. -
Обратитесь к хостинг-провайдеру:
Если ошибка повторяется, несмотря на все предпринятые шаги, возможно, есть особенности настройки серверов GoDaddy, влияющие на работу WordPress. Свяжитесь с их службой поддержки для получения помощи.
Заключение
Ошибки "Ссылка истекла" могут вызывать затруднения, но, следуя указанным шагам, вы сможете минимизировать их влияние на работу вашего сайта. Находится ли причина в конфигурации PHP или конфликтах с темами и плагинами, важно последовательно проверять каждую из возможных причин. Своевременное решение таких вопросов укрепляет стабильность и безопасность вашего WordPress-сайта, что в долгосрочной перспективе положительно скажется на его эффективности и пользовательском опыте.