Последние новости:

Поиск по сайту:

Жизнь — это внимание, ощущение и внутренние перемены (Авессалом Подводный).

Nginx. Перенаправление ошибки 404 на главную страницу в WordPress1 мин для чтения

29.03.2017
Nginx. Перенаправление ошибки 404 на главную страницу в WordPress

Есть довольно много плагинов WordPress, которые помогут вам управлять ошибкой 404, чтобы улучшить ваш SEO. Ошибка 404 не найдено может возникнуть из-за удаления старых постов или страниц и не создает редирект или от спам-ботов. Это руководство покажет вам, как использовать Nginx для перенаправления ошибок 404 на главную страницу WordPress.

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

Nginx. Перенаправление ошибки 404 на главную страницу в WordPress

Откройте виртуальный хост Nginx

sudo nano /etc/nginx/sites-available/andreyex.ru

 

Добавьте этот фрагмент в блоке сервера

# определить страницу ошибки
error_page 404 = @notfound;

# Адрес страницы ошибки 301 для редиректа
location @notfound {
    return 301 /;
}

 

Если вы не хотите делать 301 постоянную переадресацию, вы можете в место этого использовать 302 (временный редирект)

# определить страницу ошибки
error_page 404 = @notfound;

# адрес страницы ошибки 302 для перенаправления
location @notfound {
    return 302 /;
}

 

В РНР блоке установить fastcgi_intercept_errors в on

В качестве альтернативы вы можете поместить его в файл nginx.conf в блок http { block

location ~ \.php$ {
    include /etc/nginx/fastcgi_params;
    # перехват ошибки 404 для редиректа
    fastcgi_intercept_errors on;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

 

Для наглядности здесь приведен пример виртуального хоста в Nginx для WordPress с указанными выше добавками

server {
    listen 80;
    server_name andreyex.ru;

    root /var/www/nginx/andreyex.ru;
    index index.php index.html;

    access_log /var/log/nginx/andreyex.ru.log;
    error_log /var/log/nginx/andreyex.ru.error.log;

    location / {
        try_files $uri $uri/ /index.php?$args /;
    }

    # определить страницу ошибки
    error_page 404 = @notfound;

    # расположение страницы ошибки для редиректа 301
    location @notfound {
        return 301 /;
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        # перехват ошибки 404 для редиректа
        fastcgi_intercept_errors on;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }

    location = /nginx.conf {
        deny all;
    }
}

 

Читать  Добавление пользовательских стилей для WordPress Visual Editor

Проверьте ваш синтаксис виртуального хоста Nginx перед активацией

sudo nginx -t

 

Если ваш синтаксис был ОК, то перезагрузить службу Nginx

sudo service nginx reload

 

Это должно работать!

Nginx. Перенаправление ошибки 404 на главную страницу в WordPress

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

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

Спасибо большое)

Это может быть вам интересно

Статьи партнеров:

Рекомендуемое
Извлечение подсайтов на WordPress из мноузловой сети может быть трудной задачей,…
1
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить

Спасибо! Ваша заявка принята

close

Спасибо! Ваша заявка принята

close