Как убрать %C2%A0 из URL в WordPress и настроить редирект или 404

    Проблема с появлением символов %C2%A0 в конце ссылок на сайте WordPress возникает из-за неразрывного пробела (nbsp), который попадает в URL при копировании или неправильной обработке редактором. Такие адреса считаются битыми, ухудшают юзабилити и индексацию. Рассмотрим, как исправить ситуацию с помощью редиректа на правильный URL или принудительной выдачей 404 ошибки.

    Почему появляется %C2%A0 в URL

    Символ %C2%A0 - это URL-encoded представление неразрывного пробела (Unicode U+00A0). В WordPress он часто возникает из-за:

    • Вставки текста из внешних редакторов (например, Word) с сохранением форматирования.
    • Неправильной обработки якорей в визуальном редакторе.
    • Ошибок в плагинах SEO или кеширования.

    Такие ссылки не ведут на существующие страницы, а вызывают 404 или непредсказуемое поведение сервера.

    Способ 1: Автоматический 301 редирект через .htaccess

    Чтобы перенаправить все URL с %C2%A0 на корректные адреса (без хвоста), добавьте в файл .htaccess (в корне сайта) следующий код перед строкой # BEGIN WordPress:

    RewriteEngine On
    RewriteCond %{REQUEST_URI} %C2%A0 [NC]
    RewriteRule ^(.*)%C2%A0$ /$1 [R=301,L]

    Это правило удаляет %C2%A0 из конца URL и делает постоянный редирект. Важно: после добавления проверьте работу сайта, так как неверный синтаксис может вызвать ошибку 500.

    Способ 2: Принудительная выдача 404 ошибки

    Если редирект нежелателен, можно настроить возврат 404 для всех страниц с %C2%A0. Добавьте в .htaccess:

    RewriteEngine On
    RewriteCond %{REQUEST_URI} %C2%A0 [NC]
    RewriteRule .* - [R=404,L]

    Этот код заставляет сервер отдавать 404 для любого запроса, содержащего в URL данный символ. Подходит, если вы не хотите плодить редиректы.

    Способ 3: Использование плагина Redirection

    Для пользователей, не знакомых с .htaccess, подойдёт плагин Redirection. Установите его, зайдите в Tools → Redirection и настройте правило:

    • Source URL: /(.*)%C2%A0
    • Target URL: /$1
    • Type: 301 Redirect

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

    Профилактика появления %C2%A0

    Чтобы избежать проблемы в будущем:

    • Используйте плагины очистки текста при вставке (например, TinyMCE Advanced с опцией удаления nbsp).
    • Проверяйте URL вручную перед публикацией.
    • Настройте автоматическое кэширование и редиректы через плагины SEO (Yoast, Rank Math).

    Что делать, если ничего не помогает

    Если описанные методы не сработали, проверьте:

    • Не блокирует ли кеширующий плагин (WP Super Cache, W3 Total Cache) изменения в .htaccess.
    • Не конфликтуют ли правила с другими редиректами (например, от SSL или мультисайта).
    • Обратитесь в техподдержку хостинга - возможно, сервер использует свой .htaccess.

    Часто задаваемые вопросы