Перейти к содержимому
EVI Solutions

Ошибка 404 на страницах: настройка постоянных ссылок в WordPress

Легко 10 мин Обновлено:

Краткий ответ

Ошибка 404 на существующих страницах чаще всего возникает из-за неправильной настройки постоянных ссылок или устаревших правил .htaccess. Откройте Настройки > Постоянные ссылки и нажмите «Сохранить изменения», чтобы обновить правила, затем проверьте .htaccess и структуру ссылок.

Как проявляется проблема

  • Страницы, которые есть в админке, возвращают 404 Not Found
  • Главная страница работает, а внутренние страницы нет
  • Ссылки на отдельные записи показывают ошибку 404
  • После изменения структуры постоянных ссылок старые адреса перестают работать
  • 404 появляется только на некоторых страницах, в зависимости от настроек

Частые причины

Устаревшие правила в файле .htaccess

WordPress использует .htaccess для перенаправления красивых ссылок. Если правила не обновляются, сервер не знает, как обработать запрос, и возвращает 404.

Измененная структура постоянных ссылок

Если структура изменена без 301 перенаправления, старые адреса могут возвращать 404. Структура по умолчанию (/?p=123) сама по себе не должна вызывать 404 на существующих страницах.

Модуль mod_rewrite не включен

На сервере Apache должен быть включен модуль mod_rewrite. Без него красивые ссылки не будут работать и будут возвращать 404.

Конфликт с плагинами кэширования или безопасности

Некоторые плагины изменяют .htaccess или кэшируют правила перенаправления, что может привести к ошибке 404 на существующих страницах.

Смена домена или миграция сайта

После перехода на новый домен или сервер база данных может содержать старые пути, а .htaccess не обновляется автоматически.

Пошаговое решение

  1. 1

    Проверьте, действительно ли страница существует

    В админке откройте Страницы > Все страницы и убедитесь, что страница не в корзине и имеет статус «Опубликовано». Если страница в корзине, восстановите ее из корзины и попробуйте открыть снова.

  2. 2

    Сбросьте постоянные ссылки

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

  3. 3

    Проверьте файл .htaccess

    На сервере Apache или LiteSpeed получите доступ к сайту через FTP или файловый менеджер хостинга. Перед изменениями сделайте резервную копию файла. Откройте .htaccess в корне установки WordPress и проверьте, содержит ли он блок правил WordPress. Если файл не существует или не содержит блока правил WordPress, не удаляйте его. Если существует, переименуйте его в .htaccess.bak, затем снова сохраните постоянные ссылки, чтобы WordPress попытался его восстановить. Если у вас есть пользовательские правила, после проверки восстановите их из резервной копии. Если файл не восстанавливается, верните резервную копию и обратитесь в поддержку хостинга.

  4. 4

    Временно отключите плагины

    Деактивируйте все плагины, кроме необходимых, затем снова сохраните постоянные ссылки. Перед этим сделайте резервную копию сайта. Если ошибка исчезнет, активируйте плагины по одному, чтобы найти виновника. Обратите внимание на плагины кэширования, безопасности и перенаправления.

  5. 5

    Проверьте, включен ли mod_rewrite

    Свяжитесь с поддержкой хостинга и спросите, включен ли mod_rewrite. На серверах Apache это необходимо для работы красивых ссылок. Если вы используете Nginx, правила настраиваются иначе, и обычно это делает администратор сервера или поддержка хостинга.

  6. 6

    Временно измените структуру ссылок

    Если ничего не помогает, в Настройки > Постоянные ссылки временно выберите другую структуру, например Название записи, нажмите Сохранить изменения, а затем снова выберите желаемую структуру и сохраните. Перед этим сделайте резервную копию базы и сайта, так как изменение структуры меняет адреса и может повлиять на SEO. Так вы проверите, не в самой ли структуре ссылок проблема.

  7. 7

    Проверьте, находится ли сайт в подкаталоге

    Если WordPress установлен в подпапке (например, /blog/), в Настройки > Общие проверьте, правильно ли указаны Адрес WordPress (URL) и Адрес сайта (URL). Неправильный URL может вызвать 404 на всех страницах, кроме главной.

  8. 8

    Очистите кэш

    Очистите кэш плагина кэширования, кэш браузера и кэш на уровне сервера (через панель хостинга или с помощью поддержки хостинга). Затем снова откройте страницу с принудительным обновлением без кэша (Ctrl+F5, на macOS Cmd+Shift+R).

Если ничего не помогает: проверка базы данных и постоянных ссылок

Если все шаги испробованы, а 404 все еще появляется, проблема может быть в базе данных. Проверьте таблицу опций (по умолчанию wp_options) и значения siteurl, home и permalink_structure. Перед изменением сделайте резервную копию базы. Если вы не знаете, как получить доступ к базе, обратитесь в поддержку хостинга. Также проверьте, был ли сайт мигрирован с другого домена и остались ли старые ссылки в содержимом. Инструмент поиска и замены в базе (например, Better Search Replace) может помочь, но используйте его только при наличии свежей резервной копии. Для расширенных изменений правил .htaccess или конфигурации Nginx проконсультируйтесь с администратором сервера.

Как избежать повторения

  • Регулярное создание резервных копий базы и файлов перед изменением постоянных ссылок
  • Избегание изменения структуры постоянных ссылок без необходимости
  • Использование надежных плагинов кэширования и безопасности
  • Проверка файла .htaccess после миграции сайта

Когда лучше обратиться к специалисту

Если вы не уверены, как получить доступ к файлу .htaccess или базе данных, или если ошибка сохраняется после всех шагов, обратитесь в IT поддержку, чтобы избежать дополнительного ущерба для сайта.

Создание сайтов · Быстрые, SEO-оптимизированные многоязычные сайты

Частые вопросы

Почему страницы возвращают 404, когда они опубликованы?

Наиболее частая причина - устаревший файл .htaccess или неправильная структура постоянных ссылок. Сброс постоянных ссылок в настройках часто решает проблему.

Потеряю ли я SEO, если изменю постоянные ссылки?

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

Как узнать, что проблема в плагине?

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

Поделиться
Не нашли решение?ИИ-помощник работает 24/7. Опишите проблему или отправьте скриншот ошибки и получите инструкцию для вашего случая.Спросить ИИ-помощника