У меня была очень похожая проблема с какой-то неизвестной CMS для Joomla.
Если вы хотите сделать это с помощью .htaccess в Apache, есть способ, но если между старым URL и новым URL нет абсолютно никакой связи, вам нужно написать две строки для каждой пары URL.
RewriteEngine On
# now the first Example
RewriteCond %{QUERY_STRING} ^option=com_content&task=view&id=49&Itemid=29$
RewriteRule ^index\.php$ /?p=23 [R=301,L]
# Repeat last two lines for all your URLs
Я не уверен, есть ли у вас такие новые URL. Лично SEF URL будет лучше, например: https://example.com/path/to/new/page
Если вы хотите сделать это, чем вы можете сделать это, но вы должны добавить? в конце пункта назначения, в противном случае старая строка запроса будет добавлена к вашему новому пункту назначения, например: https://example.com/path/to/new/page?option=com_content&task=view&id=49&Itemid=29
поэтому для этого примера сделайте это следующим образом:
RewriteCond %{QUERY_STRING} ^option=com_content&task=view&id=49&Itemid=29$
RewriteRule ^index\.php$ /path/to/new/page? [R=301,L]