Ваш вопрос неясен относительно того, как вы пытаетесь выполнить перенаправления в файле .htaccess
, поэтому в следующий раз я бы порекомендовал вам опубликовать некоторые примеры кода, которые вы пробовали, чтобы может помочь вам легче.
Исходя из вашего тега Apache и проблемы, которую вы описываете, я собираюсь предположить, что вы использовали mod_alias
, пытаясь сделать что-то вроде этого:
Redirect 301 /laser-alignment-resources/presentations.cfm?pres=diaphragm http://www.acquip.com/en/presentations/47-presentation-internal-laser-diaphragm-alignment
Это не работает, так как директива Redirect
, похоже, проверяет только часть пути запроса, а не строку запроса.
Если у вас есть mod_rewrite
, вы можете настроить правила перезаписи для URL-адресов, которые вам нужно перенаправить, основываясь на их строках запроса. Это будет выглядеть примерно так:
RewriteEngine On
RewriteCond %{QUERY_STRING} =pres=diaphragm
RewriteRule ^laser-alignment-resources/presentations\.cfm$ http://www.acquip.com/en/presentations/47-presentation-internal-laser-diaphragm-alignment [R=301,L]
RewriteCond %{QUERY_STRING} =pres=gas
RewriteRule ^laser-alignment-resources/presentations\.cfm$ http://www.acquip.com/en/presentations/48-presentation-gas-turbine-thermal-alignment [R=301,L]
... и так далее. Вы можете сохранить ваши текущие Redirect
операторы, так как они должны хорошо работать бок о бок с этими правилами.