:/0 в конце ссылки — ошибка 404: как отрезать часть URL редиректом 301 (.htaccess и Nginx)
Давно заметил: к обычным ссылкам на сайт откуда-то добавляются символы :/0, и получается адрес вида
https://nemcd.com/2013/12/v-excel-propali-listy-kak-vklyuchit/:/0
Такая страница отдаёт ошибку 404. Хорошо, что у меня стоит плагин SEO Ultimate — он и сообщил об этих ошибках. Пришло время решить проблему.

Откуда берётся :/0, я глубоко не выяснял. Правильнее, конечно, найти корень проблемы, но быстрый поиск по коду сайта ничего не дал, поэтому я решил просто сделать редирект.
Решение: 301-редирект на нормальный адрес
Отрезаем ненужную добавку и делаем постоянный (301) редирект на правильную ссылку. Так и посетитель попадает на нужную страницу, и поисковик понимает, что адрес с :/0 — тот же самый, что и без него.
Раньше я писал про похожую проблему — индексацию ссылок с ?utm_source: там свой «хвост» к ссылке добавлял Твиттер. Ситуация другая, но решение похожее.
Apache: правило в .htaccess
Добавляем строки в корневой .htaccess сайта:
RewriteCond %{REQUEST_URI} ^(.*)\:\/0
RewriteRule ^(.*)\:\/0$ $1 [R=301,L]
Для WordPress в итоге получается так:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^(.*)\:\/0
RewriteRule ^(.*)\:\/0$ $1 [R=301,L]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Наше правило должно стоять до правил WordPress, иначе запрос уйдёт в index.php и редирект не сработает. Если в .htaccess есть и другие строки — объединяйте аккуратно.
Nginx: правило в конфиге сайта
Если сайт работает на Nginx + PHP-FPM, .htaccess не читается. Добавьте в блок server { … } вашего сайта строку и перезагрузите Nginx (nginx -t, затем nginx -s reload):
rewrite ^(.*):/0$ $1 permanent;
Проверка
Откройте любую ссылку с :/0 на конце — браузер должен перейти на нормальный адрес. Код ответа удобно посмотреть командой:
URL=https://example.com/2013/12/lyubaya-stranica curl -I "$URL/:/0"
В ответе должно быть 301 Moved Permanently и строка Location с адресом без :/0. Обязательно проверьте, что весь сайт работает как раньше: нет новых ошибок 404 и нет бесконечного редиректа.
Класс, прошел год и опять пригодился совет
Прошло 3 года и теперь нужно сделать редирект в
Nginx + PHP FPM
растем