WordPress 404 ошибка после переноса сайта

Если главная страница сайта отображается, а внутренние выдают ошибку 404 или 500, проблема заключается в отсутствии файла .htaccess или его неправильном содержании.

Внутренние страницы перестают открываться на CMS (WordPress, Joomla, DLE), поскольку в этих системах файл .htaccess имеет большое значение и часто видоизменяется. Проблема появляется при переносе сайта с одного виртуального хостинга на другой.

Оглавление статьи:

  • Причины и решение ошибки 404/500
  • Файл .htaccess для WordPress
  • Хостинг на Windows и панель ISPmanager

Причины и решение ошибки 404/500

Файл .htaccess должен содержать записи, необходимые для работы CMS. При переносе сайта на новый хостинг, особенно через браузерные версии панелей хостеров, данный файл может не попасть в архив из-за настроек безопасности. Как следствие, на новом хостинге файла не будет, и правильно развернутая из бекапа и настроенная CMS работать не будет — кроме главной страницы. Наиболее часто проблема наблюдается на сайтах, где вместо стандартного отображения URL подключено ЧПУ.

Внутренние страницы перестают открываться, если:

  1. Файл .htaccess отсутствует. Проблема актуальна при переносе сайта с одного хостинга на другой.
  2. Файл пустой. Содержимое файла может быть удалено по ошибке, в результате заражения сайта вирусами или по иной причине.
  3. Содержимое файла изменено или повреждено. Если внутренние страницы сайта перестали работать после каких-либо действий с .htaccess, следует проверить файл на наличие всех директив, необходимых для работы CMS.

 Страница 404 WordPress

Отличительной особенностью ошибки с файлом .htaccess является измененный дизайн страницы 404/500. Страницы ошибки 404 будут отдаваться сервером и отличаться от оформления 404 у сайта (с шаблоном и дизайном, элементами навигации). Актуально, по крайней мере, для WordPress.

Для исправления ошибок нужно создать .htaccess с нужным содержимым. Содержание файла будет меняться в зависимости от CMS. Помимо указанного кода, в файле может содержаться любая информация и директивы, необходимые для функционирования сайта.

Файл .htaccess для WordPress

Каждая система управления контентом требует определенных директив для полноценного и корректного функционирования. Документ .htaccess должен располагаться в корне сайта и иметь, как минимум, указанное ниже содержание (для WordPress).

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Содержимое файлов для других популярных CMS можно без проблем найти в сети — там текста в разы больше, и в статью информация попросту бы не влезла. У WordPress содержимое файла не менялось годами, а потому ошибка одинаково хорошо решается на всех версиях движка.

Хостинг на Windows и панель ISPmanager

Любые операции с файлом .htaccess актуальны только для хостингов, расположенных на Linux-серверах. Сервера от Windows попросту не имеют такого файла — вместо него аналогичные функции выполняются в документе web.config. Уточнять содержимое данного файла следует в поддержке соответствующей CMS.

Помимо этого, проблема с ошибкой 404 на внутренних страницах актуальна для Linux-серверов с панелями ISPmanager. В этом случае требуется отключить автоподдомены, если они включены, и проверить наличие проблемы. Ошибки 404 и 500 могут исчезнуть и без замены .htaccess (либо с файлом изначально все нормально, если он присутствует в корне и правильно заполнен).

I moved a website from a third party to an internal IP.

I unzipped the WP installation and imported the mysql DB and ran these queries :

UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, 'http://olddomain.com','http://newdomain.com');

UPDATE wp_posts SET post_content = replace(post_content, 'http://olddomain.com', 'http://newdomain.com');

I can see my new index.php and even login to the admin section , but I cannot get to any of the links in the pages. I get 404 errors. The admin page lists the new domain correctly.

I might be missing a .htaccess or a rewite rule and I am not sure of what to do.

Any suggestions will be much appreciated.

Разберем что же делать, если при переносе WordPress у Вас работает только главная страница, а когда заходите в свои записи – получаете ошибку 404 URL не найден (url not found) . 


Во первых в базе данных в таблице wp_options измените два поля с URL на новый  URL с адресом на который переносите.

Затем зайдите в консоль wordpress -> настройки, постоянные ссылки, обновите эту страницу нажав “сохранить”.

Решение проблемы – обновление постоянных ссылок (ЧПУ). 

Происходит это потому, что в базе данных в таблице wp_posts остаются поля со старыми URL, можно изменить всё и в phpMyAdmin’е, но проще и быстрее это сделать именно в консольки wordpress’а.

Если не справились, то пишите нам тут: связаться с нами

wordpress

  • WordPress

Добрый день. Перенёс WP с хостинга на другой хостинг, ошибка 404 на всех страницах кроме главной.
.htaccess присутствует


  • Вопрос задан

    более трёх лет назад

  • 3226 просмотров


Комментировать


Решения вопроса 2

CyberMan1324

Привет. Можно ссылочку увидеть и .htaccess?

  • # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    rahrah.ru

  • CyberMan1324

    Alexander Kovalenko: попробуй зайти в Параметры->постоянные ссылки->настройки постоянных ссылок и сохранить изменения.

  • CyberMan1324

Решилось, проблема была с файлом web.config

  • А можешь подсказать как решил проблему

Пригласить эксперта


Похожие вопросы


  • Показать ещё
    Загружается…

22 июн. 2023, в 11:00

200 руб./в час

22 июн. 2023, в 10:49

5000 руб./за проект

22 июн. 2023, в 10:00

2500 руб./за проект

Минуточку внимания

Иногда после переноса сайта на другой хостинг он перестаёт работать. Или не работают только внутренние страницы, особенно если включены ЧПУ ссылки.

Причин, конечно же, может быть много. Но иногда мы упускаем самое простое. Например, ошибка 404 на внутренних страницах WordPress может возникать, когда отсутсвует файл «.htaccess».

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

Также если вдруг возникла ошибка 404 проверьте есть ли файл .htaccess в корне сайта и не очистился ли он случайно от данных. Например, вы что-то сохраняли в него, а место на диске не было. В итоге файл может оказаться пустым.

Возможно, вам также будет интересно:

  • Word убрать выделение ошибок
  • Wordpress ошибка пожалуйста введите комментарий
  • Word слишком много орфографических или грамматических ошибок
  • Wordpress ошибка out of memory
  • Word скрыть подчеркивание ошибок

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии