пятница, 7 февраля 2014 г.

ОШИБКА: Cookies либо заблокированы

 

ОШИБКА: Cookies либо заблокированы, либо не поддерживаются вашим браузером. Чтобы использовать WordPress, нужно разрешить cookies.

Способы борьбы

Сегодня, наконец, нашел причину и могу поделиться о всеми читателями моего блога. Первое, что надо сделать – это определить точную причину неработоспособности вашего блога. Если после ввода пароля и логина возникает пустой экран, значит у вас отключен вывод ошибок. Для отладки вывод ошибок может быть полезен, поэтому в нашем случае, заходим в свой аккаунт на сервере у хостера ( по фтп или через админпанель) и в корневой директории создаем файл .htaccess в котором пишем строчку: php_flag display_errors on.

Теперь при заходе в админку вместо чистого экрана вы, скорее всего увидите следующий текст:

Warning: Cannot modify header information – headers already sent by (output started at /home/ваш_хостинг/ваш_домен/public_html/wp-content/themes/snapshot/functions.php:429) in /home/ваш_хостинг/ваш_домен/public_html/wp-login.php on line 290

Это хорошо, потому что теперь вы распознали проблему, а значит фактически нашли решение.

Проблема заключается в следующем:

Вордпресс работает с кодировкой utf-8 без BOM (Byte Order Mark). Не все редакторы текста могут правильно работать с этой кодировкой. В частности нельзя править файлы wordpress c помощью обычного Блокнота из стандартной поставки Windows.

При сохранении файла многие текстовые редакторы предлагают флажок «Include Unicode Signature (BOM)», «Add Byte Order Mark» или нечто подобное. Если такого рода настройки не обнаружено: ищите другой редактор.

Я пользуюсь программой Notepad++ – бесплатная и очень функциональная. можно ещё порекомендовать akelpad – простенький редактор с данной возможностью.

Неплохое решение проблемы : есть программы и утилиты для автоматического удаления BOM из файлов, как один из вариантов.

Но, есть более быстрый способ.

Поскольку мы уже знаем проблемные файлы, т.к. поставили вывод всех ошибок в файле .htaccess, мы можем работать с проблемой напрямую. Повторю текст ещё раз:

Warning: Cannot modify header information – headers already sent by (output started at /home/ваш_хостинг/ваш_домен/public_html/wp-content/themes/snapshot/functions.php:429) in /home/ваш_хостинг/ваш_домен/public_html/wp-login.php on line 290

Найдите файл, обозначенный красным и жирным шрифтом, а в нем строку с номером, стоящим после названия файла ( в данном случае 429). Обычно, это строка находится в самом конце файла. Удалите все , что находится в файле после последнего ?>.

И сохраните его.

Все….

2 комментария:

  1. Здравствуйте, у меня та же проблема - пишет ошибку про куки, хотя все разрешено и на других сайтах пароли сохраняются, а в вордпресс не могу войти (( я новичок, сделала на шаблоне вордпресс сайт, работала нормально в админке, потом недели две не было времени, хотела войти дальше работать и вот, пожалуйста. Кэш почистила, потом вообще браузер заново установила, думала что вирус и собиралась винду сносить, но наткнулась на вашу статью. Теперь пытаюсь файл создать, как вы пишите. Какого он должен быть расширения? и в корневой директории именно куда? в какую папку? я сделала расширение php и вставила сайт в папку с названием сайта. Или надо было в папку wp-admin?
    Спасибо за статью, жду ответа)

    ОтветитьУдалить
  2. Прошу прощения, мне уже помогли)

    ОтветитьУдалить