6 вариантов исправлений ошибки “ответ не является допустимым JSON-ответом” / “the response is not a valid JSON response” в WordPress (+ 7й – бонусный)

Вы создаете контент в редакторе WordPress, но документ не обновляется. И на самом верху страницы вы видите сообщение об ошибке, в котором говорится: “Обновление не удалось. Сообщение об ошибке: ответ не является допустимым ответом JSON”.

Прежде чем вы запаникуете (а вы запаникуете), позвольте мне заверить вас, что эту ошибку можно легко устранить, чтобы вы не потеряли свой кропотливый труд.

Эта ошибка “the response is not a valid JSON response” попортила немало нервных клеток во всем мире и является одной из распространенных ошибок WordPress, с которыми пользователи сталкиваются на своих сайтах.

Да что там говорить, я сам с этой проблемой бился несколько дней. Как я решил эту ошибку – читайте в конце статьи, а пока возможно вам поможет одно из уже известных решений

Напоминаю о необходимости создания бекапов перед любыми действиями с сайтом

Возможно, вы сталкивались с этими ошибками при попытке опубликовать или обновить свои записи или страницы WordPress. Возможно, вы даже сталкивались с этой ошибкой при попытке загрузить изображение на свой веб-сайт WordPress.

Если вы не устраните эту ошибку немедленно, вы можете потерять все изменения, внесенные вами за последние несколько часов (да, мы, люди, все еще проводим часы, не сохраняя нашу работу). Эта статья о том, как спасти вас от этого.

Есть много причин, по которым эти ошибки могут возникать на вашем сайте WordPress. Это может быть связано с вашим веб-сервером, файлом .htaccess, SSL-сертификатом, плагином, темой или по другой причине. Итак, в зависимости от вашего конкретного сценария, вам может подойти другое решение.

Здесь я описал все методы, которые помогут вам устранить эту ошибку. Будь то ошибка публикации. Сообщение об ошибке: Ответ не является допустимым ответом JSON., Ошибка обновления. Сообщение об ошибке: Ответ не является допустимым ответом JSON., или просто ответ не является допустимым ответом JSON.

Попробуйте использовать следующие методы один за другим, и вы должны найти тот, который вам подходит. Но чтобы не потерять прогресс в работе, откройте панель управления WordPress в новом окне и попробуйте решения там.

Обновите постоянные ссылки


Предупреждение: Обновление структуры постоянных ссылок может изменить URL-адреса всех страниц и сообщений вашего веб-сайта, поэтому предыдущие URL-адреса для доступа к вашим страницам и сообщениям не будут работать. Это также повлияет на SEO вашего веб-сайта. Поэтому, если важно сохранить исходный URL, вы можете либо не захотеть пробовать этот вариант, либо вернуться к исходной структуре постоянных ссылок, как только тест будет завершен. Но если ваш веб-сайт совершенно новый, вам не нужно беспокоиться об этом.

Измените постоянную ссылку WordPress


Наиболее распространенным решением при сбое публикации или обновления ответа является недопустимая ошибка ответа JSON – это обновить структуру постоянных ссылок.

На панели управления WordPress перейдите в Настройки, а затем в Постоянные ссылки. Затем вы можете нажать на кнопку Сохранить изменения, чтобы повторно сохранить или обновить текущую структуру постоянных ссылок. Затем проверьте, исправлена ли ошибка.

Если ошибка не устранена, вы можете вернуться на страницу с постоянной ссылкой, а затем выбрать “Обычная” в разделе “Пользовательские настройки”, чтобы изменить структуру постоянной ссылки. Затем нажмите “Сохранить изменения”. Теперь проверьте еще раз, устранена ли ошибка.

Если ошибка не устранена, вы можете попробовать перейти ко всем другим структурам постоянных ссылок и проверить, устраняется ли ошибка для какой-либо из них.

Если это решение вам не подходит, попробуйте следующее.

Используйте классический редактор


В декабре 2018 года WordPress обновил свой классический редактор новым редактором Gutenberg/Block. И с тех пор многие сталкивались с этим “Ошибка публикации. Ответ не является допустимым ответом JSON.” и “Ошибка обновления. Ответ не является допустимым JSON-ответом.” ошибка.

Установите плагин Classic Editor WordPress


Итак, вернувшись к классическому редактору, многие смогли устранить ошибку. Чтобы использовать Classic Editor, вам нужно будет установить и активировать плагин Classic Editor на вашем веб-сайте WordPress.

Однако, если вы используете классический редактор, это заменит новый редактор блоков WordPress на его старый классический редактор. Это изменит то, как вы привыкли редактировать свои страницы и сообщения. Это также может повлиять на форматирование и верстку ваших существующих страниц и сообщений, которые были ранее отредактированы с помощью редактора блоков. Итак, вам следует сначала защитить свой сайт, изменив настройки в классическом редакторе, прежде чем начать его использовать.

Измените настройки плагина классического редактора WordPress


Итак, чтобы не повлиять на ваши существующие страницы, после активации плагина Classic Editor перейдите в Настройки, а затем в панель управления WordPress. Здесь вам будут показаны настройки плагина Classic Editor. Здесь выберите “Да” для опции “Разрешить пользователям переключать редакторы”. Затем нажмите “Сохранить изменения”. Это позволит вам использовать редактор Gutenberg/Block для ваших существующих страниц и сообщений, так что вам не придется беспокоиться о потере существующей работы, если вы захотите отредактировать какие-либо существующие страницы или сообщения на вашем сайте. Это также даст вам возможность редактировать любые новые страницы или записи с помощью редактора блоков или классического редактора.

Затем попробуйте создать новую страницу или запись с помощью классического редактора и проверьте, исправлена ли ошибка ответа JSON.

На странице настроек плагина вы также можете выбрать “Редактор блоков” в качестве опции для “Редактора по умолчанию для всех пользователей”, если вы хотите сделать редактор блоков вашим редактором WordPress по умолчанию при использовании плагина Classic Editor.

Использование классического редактора может решить проблему с ответом JSON при обновлении или публикации ваших страниц и сообщений. Но если это не решит проблему, вы можете просто отключить плагин и попробовать следующее решение.

Настройте SSL


На вашем веб-сайте всегда должен быть включен протокол TLS/SSL, иначе веб-браузеры будут показывать предупреждающее сообщение всякий раз, когда кто-то попытается посетить ваш веб-сайт. Это предупреждение сделает ваш сайт опасным, и вы потеряете много посетителей вашего веб-сайта. Вот почему правильная настройка SSL-сертификата для вашего веб-сайта является важной задачей, независимо от того, устраняет ли она ошибку “Ответ не является допустимым ответом JSON”.

В этой части я расскажу вам, как вы можете правильно настроить свой веб-сайт WordPress для использования SSL-сертификата, который также является очень распространенным решением проблемы ошибки ответа JSON.

Используйте SSL-сертификат


Вы можете проверить, использует ли ваш сайт SSL-сертификат, просмотрев URL вашего веб-сайта. После загрузки вашего веб-сайта в веб-браузере вы можете щелкнуть по URL вашего веб-сайта, чтобы увидеть, начинается ли URL с HTTPS или HTTP. Если он начинается с HTTPS и если вы видите значок замка без крестика рядом с URL-адресом, значит, на вашем сайте уже настроен SSL-сертификат. Итак, вам просто нужно убедиться, что ваш веб-сайт использует его должным образом.

с SSL против без SSL


Например, если ваш веб-сайт example.com, то он будет выглядеть как https://example.com и будет помечен значком замка после загрузки в вашем веб-браузере, если он правильно настроен с использованием SSL-сертификата.

Однако отсутствие значка замка не всегда означает, что SSL-сертификат не был выдан или ваш веб-сайт не работает. Вместо этого причина может заключаться в том, что ваш веб-сайт не был настроен на автоматическое перенаправление всего HTTP-трафика на HTTPS-версию вашего веб-сайта. Чтобы проверить, так ли это, измените HTTP-адрес вашего веб-сайта на HTTPS в веб-браузере и нажмите enter. Если в браузере теперь отображается значок замка рядом с URL-адресом, значит, для вашего сайта был выдан SSL-сертификат, но он настроен неправильно. Итак, нам нужно будет правильно настроить его.

Но если изменение HTTP на HTTPS не работает, то, вероятно, это связано с тем, что для вашего веб-сайта не был выдан SSL-сертификат. И если это так, то сначала вам нужно будет выдать SSL-сертификат для вашего веб-сайта. Если вы используете cPanel, Plesk, DirectAdmin, CyberPanel или любую другую панель управления веб-хостингом, вы можете легко выдать SSL-сертификат для своего веб-сайта с этой панели управления веб-хостингом. Смотрите их руководство о том, как это сделать.

Кроме того, срок действия SSL-сертификатов истекает через определенный период, поэтому вы также можете проверить, действителен ли ваш SSL-сертификат. Если он недействителен, вам следует сначала обновить SSL-сертификат, чтобы устранить проблемы, связанные с SSL. Как только на вашем сайте WordPress будет установлен действительный SSL-сертификат, вы можете выполнить следующие шаги здесь, чтобы устранить ошибку публикации. Ответ не является допустимым ответом JSON. или ошибка обновления. Ответ не является допустимым ответом JSON. ошибка.

Принудительное перенаправление HTTPS


Используя панель управления веб-хостингом, такую как cPanel, Plesk, CyberPanel и т.д., вы можете легко перенаправить весь HTTP-трафик на HTTPS-версию вашего веб-сайта. Процесс выполнения этого будет отличаться в зависимости от используемой вами панели управления хостингом, но вы должны легко найти возможность сделать это в настройках SSL или в настройках домена на панели управления. Ищите настройки, в которых указано что-то вроде принудительного перенаправления HTTPS, перенаправления HTTP на HTTPS и так далее. Смотрите их руководство о том, как это сделать.

Если вы не используете панель управления хостингом или у вас это не работает, вы можете использовать действительно простой SSL-плагин для этого. Я описал это далее в следующем шаге “Устранение ошибки смешанного содержимого”, который также очень важен для решения проблем, связанных с SSL для вашего сайта WordPress. Таким образом, даже если этот шаг устранит ошибку, вам все равно следует выполнить следующий шаг, чтобы устранить ошибку смешанного контента на вашем веб-сайте.

Устраните ошибку смешанного контента


Ваши веб-страницы, как правило, требуют связывания нескольких файлов, таких как CSS, JS, изображения и т.д. для правильного отображения и функционирования. И ссылки на эти файлы могут содержать HTTP или HTTPS. Если ваш веб-сайт настроен на использование HTTPS, но если некоторые из этих ссылок используют HTTP вместо HTTPS, возникнет ошибка смешанного содержимого.

Установите плагин Really Simple SSL WordPress


Чтобы решить эту проблему, вы можете установить плагин Really Simple SSL на свой сайт WordPress. Это изменит все ссылки на вашем веб-сайте, чтобы они использовали HTTPS, и, следовательно, устранит ошибку смешанного содержимого.

Настройка плагина Really Simple SSL для WordPress


После установки и активации плагина Really Simple SSL вы получите уведомление об активации SSL. Итак, нажмите на кнопку “Вперед, активируйте SSL!” в уведомлении. Но если вы не видите уведомления, тогда на панели управления WordPress перейдите в Настройки и выберите SSL.

Затем вы увидите ту же кнопку с надписью “Продолжайте, активируйте SSL!”. Как только вы нажмете на кнопку, она активирует SSL и установит перенаправление HTTPS для вашего веб-сайта.

Действительно простой SSL плагин 301 Предупреждение о перенаправлении WordPress
Затем вы увидите предупреждение с надписью “WordPress 301 redirect включен. Мы рекомендуем включить опцию перенаправления 301 .htaccess в вашей конкретной настройке”. Рядом с этим предупреждением вы увидите ссылку с надписью “Включить”. Нажав на ссылку, вы перейдете на вкладку настроек плагина. Вы также можете перейти на ту же страницу с панели управления WordPress, перейдя в Настройки, затем в SSL, а затем выбрав вкладку Настройки.

Действительно простые настройки SSL плагина WordPress
Здесь вы увидите опцию с надписью “Включить перенаправление 301 .htaccess”. Нажмите кнопку рядом с ней, чтобы активировать перенаправление HTTPS из вашего файла .htaccess. Перед включением кнопки вы также можете прочитать предупреждение о том, как восстановить доступ к вашему сайту в случае проблемы с циклом перенаправления. Затем, после включения кнопки, нажмите “Сохранить”.

Общие настройки адреса WordPress


Также на панели управления WordPress вы можете перейти к настройкам, затем к Общим. Это покажет вам “Адрес WordPress (URL)” и “Адрес сайта (URL)”. Убедитесь, что эти URL-адреса используют HTTPS, а не HTTP.

После этого проверьте, исправлена ли ошибка ответа JSON. Если это не исправлено, вы также можете перейти в Настройки > SSL > Настройки, а затем включить кнопку рядом с опцией “Использовать альтернативный метод для исправления смешанного содержимого”, а затем сохранить изменения.

Конфликт плагинов


Чем больше плагинов вы используете на своем сайте WordPress, тем выше вероятность конфликта между плагинами. Некоторые из этих конфликтов также могут приводить к недопустимым ошибкам ответа JSON.

Я наблюдал эту проблему на веб-сайтах, на которых установлено большое количество плагинов, скажем, более 40. Но важно не только количество плагинов. Скорее всего, некоторые файлы плагинов могут вызывать ошибку JSON на вашем веб-сайте.

Например, на сайте клиента плагин Yoast SEO вызывал ошибку ответа в формате JSON.

Итак, чтобы исключить любой конфликт плагинов, вам следует деактивировать все плагины на вашем веб-сайте. При необходимости используйте плагин проверки работоспособности и устранения неполадок, чтобы деактивировать плагины в серверной части, в то время как внешний интерфейс остается прежним для ваших посетителей.

Если ошибка ответа JSON исчезает при деактивации всех плагинов, это означает, что ошибка была вызвана одним из плагинов. Теперь вам следует активировать плагины один за другим. Если ошибка повторяется при активации определенного плагина, это означает, что этот плагин был виновником.

Конфликт REST API WordPress


Серверная часть администратора WordPress использует REST API для связи с сервером. Если возникнет какой-либо конфликт с этим API, WordPress не сможет подключиться к серверу и вместо этого отобразит ошибку ответа в формате JSON.

Чтобы определить, действительно ли проблема с REST API является причиной проблемы, попробуйте отредактировать одну из ваших записей и сохранить ее. Как только отобразится недопустимая ошибка JSON, щелкните правой кнопкой мыши, а затем нажмите “Проверить”, чтобы открыть инструменты разработки Chrome.

Теперь на вкладке Консоль проверьте, отображается ли какая-либо ошибка REST API. Если это так, то причиной действительно является конфликт REST API.

Лучшим решением для этого является обращение к вашему веб-хостингу, поскольку ошибки REST API в основном возникают на уровне сервера. Если вы используете плагин кэширования, такой как LiteSpeed Cache, вам следует отключить настройку кэширования REST API и попробовать сохранить запись еще раз.

Альтернативные решения ответа – недопустимая ошибка ответа в формате JSON


Отключите все плагины на вашем сайте и отредактируйте содержимое в обычном режиме. Если вы используете плагин Really Simple SSL, то сначала отключите этот плагин. Затем попробуйте сохранить документ. Если вам удалось сохранить его без каких-либо ошибок, повторно активируйте плагины один за другим, чтобы проверить, какой плагин вызвал ошибку.

Есть еще одно решение, которое вы можете попробовать, чтобы исправить ошибку “ответ не является допустимым JSON-ответом” в WordPress.

Перейдите в Настройки > Постоянные ссылки. Измените структуру постоянных ссылок с post-name или текущей структуры на обычную, т.е. https://yoursite.com/?p=123. Теперь попробуйте сохранить свой пост /страницу. Проблема должна быть решена.

Исправьте ошибку “ответ не является допустимым json-ответом”, изменив постоянную ссылку
Настройки постоянных ссылок WordPress
Но попробуйте это решение, если все другие методы не работают, поскольку изменение постоянных ссылок приведет к огромным проблемам с SEO на живом веб-сайте, и вам также потребуется добавить несколько перенаправлений.

Мы обсудили 6 возможных решений ошибки “Ответ не является допустимым JSON-ответом” в WordPress. Я надеюсь, что один из этих методов сработал для вас. Если это сработало, дайте мне знать в комментариях ниже. Если нет, опубликуйте свою конкретную проблему, чтобы другие могли предложить другие решения.

Бонус – решение, которое помогло мне

Обновите apache2 на своем сервере. С каких-то недавних пор (осени 2023) актуальные версии WordPress в этом очень сильно нуждаются для стабильной работы REST API.

Не забывайте о важности бекапов

От QA genius

Добавить комментарий

Adblock
detector