Не работает редирект .htaccess
Добрый день. Совершенно отчаялся настроить редирект на своём сайте, может быть, кто-нибудь сможет помочь.
Сайт на modx Evolution. Страница попала в индекс, после этого урл вручную изменили. Старый урл выдаёт 404 ошибку. Надо с него сделать редирект на новый урл. Перепробовал все варианты редиректов в .htaccess, которые смог найти за несколько недель. Ни один из них не работает, в лучшем случае выдаёт ошибку 500.
При этом файл .htaccess содержит много различных редиректов (friendly url, www, multilingual и другие), которые успешно работают.
Redirect /page.html http://site.ru/new-page.html
и подобные не работают.
Если есть время, помогите, пожалуйста.
Содержимое .htaccess:
Options +FollowSymLinks
# Friendly URLs
RewriteEngine On
RewriteBase /
# Fix Apache internal dummy connections from breaking [(site_url)] cache
RewriteCond %{HTTP_USER_AGENT} ^.*internal\ dummy\ connection.*$ [NC]
RewriteRule .* - [F,L]
# Exclude /assets and /manager directories from rewrite rules
RewriteRule ^(manager|assets) - [L]
# Redirect from mydomain.com/rootname to mydomain.com/rootname/
RewriteRule ^en$ en/ [R=301,L]
RewriteRule ^ru$ ru/ [R=301,L]
RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L]
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^(.*)$ [NC]
RewriteCond %{REQUEST_URI} !^/(en|ru)/
RewriteRule ^(.*)$ http://%1/ru/$1 [R=301,L]
# The Friendly URLs part
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^en/(.*)$ index.php?q=$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ru/(.*)$ index.php?q=$1 [L,QSA]
Источник: Stack Overflow на русском