<div\s+id="comments".+?</div>\s+</div>
Если анкоров произвольное количество. Проверялось на Notepad++ 7.9.3
(?-s)(.*?>)\(?(.*?)\||\)</a>\R?
$1$2</a>\n$1
RewriteRule ^(.+)/\d+(-\d+)+$ /$1/ [R=301,L]
1. Хоть и на спичках, но экономия.
Ну если экономить, то из шаблона ^(?>.*)$ можно всё выкинуть и оставить только ^
RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301]
По поводу %{SERVER_NAME} в документации сказано, что подставляться имя хоста из запроса будет если в настройках отключить UseCanonicalName.
UseCanonicalName Off
https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewritecond
SERVER_NAME and SERVER_PORT depend on the values of UseCanonicalName and UseCanonicalPhysicalPort respectively.
Что Apache пишет в error.log
redirect 301 "/Alan Walker.html" https://domain.xyz/redirect 301 "/Eva O'Braun.html" https://domain.xyz/
Если анкоров произвольное количество. Проверялось на Notepad++ 7.9.3
Нужно будет несколько раз нажать кнопку "Заменить все" пока не останется символов |.1. Хоть и на спичках, но экономия.
Ну если экономить, то из шаблона ^(?>.*)$ можно всё выкинуть и оставить только ^
RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301]
По поводу %{SERVER_NAME} в документации сказано, что подставляться имя хоста из запроса будет если в настройках отключить UseCanonicalName.
https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewritecond
SERVER_NAME and SERVER_PORT depend on the values of UseCanonicalName and UseCanonicalPhysicalPort respectively.
Отдает 500 ошибку, проверял со сбросом кэша и в разных браузерах
Что Apache пишет в error.log
не работает
Ещё нужно глянуть что Apache пишет в error.log там должно быть больше подробностей.