Так как id является "уникальным", то это будет все, что вам нужно для сопоставления.
Например:
RedirectMatch ^/posts/category/340- /category/post-name-without-id-and-changed-oeaeue
Если, однако, Вы ищете обобщенный редирект «многие ко многим», тогда здесь просто недостаточно информации для выполнения перенаправления в .htaccess
. Например, как вы получаете от post-name-with
до post-name-without-id-and-changed
- в частности, в отношении бита "и-изменен"?
Любое перенаправление, которое вы выполняете в .htaccess
, может просматривать только элементы исходного запроса. Если информация не для начала (в некоторой форме), то вы не можете волшебным образом использовать ее в качестве цели перенаправления без жесткого кодирования. (Если у вас есть доступ к конфигурации сервера, вы можете настроить RewriteMap
s - по сути, «справочную таблицу», чтобы помочь с перенаправлением. Но в противном случае, только у 1015 * такой возможности нет.)
Если у вас много перенаправлений такого рода, то лучше выполнить перенаправление в коде на стороне сервера (лог приложения c) вместо .htaccess
.
ОБНОВЛЕНИЕ: Из вашего второго примера: /posts/onpage/374-fünf-strategien.html
до /onpage/fuenf-strategien
. Опять же, нет логического процесса перехода от fünf
к fuenf
без жесткого кодирования замены.
Если существует конечная серия замен, например. öäü
до oeaeue
и fünf
до fuenf
, затем вы можете применить их в .htaccess
до , удалив расширение .html
, идентификатор и изменив URL-путь и т. Д. c. Однако, если вы добавляете произвольный текст для каждого URL-адреса (например, бит and-changed
выше), тогда вы вернетесь к выполнению этого одного URL-адреса за раз.