Как я могу перенаправить URL, если он содержит определенные символы - PullRequest
0 голосов
/ 22 мая 2018

Я хочу перенаправить (301) эти URL:

c-4344196/springkussen-in-gorinchem/
c-4375489/springkussen-in-schiedam/
c-4532389/springkussen-in-rotterdam/
c-4339304/springkussen-in-spijkenisse/

и т. Д. На:

verhuur/springkussen-in-gorinchem/
verhuur/springkussen-in-schiedam/
verhuur/springkussen-in-rotterdam/
verhuur/springkussen-in-spijkenisse/

Но моя проблема в том, что у меня уже есть эта строка:

RewriteRule ^([\w-]+)/([\w-]+)/?$ product-page.php?cat=$1&alias=$2 [QSA,L]

Эта строка отправляет все / все в product-page.php, это будет означать, что verhuur / springkussen-in-rotterdam также будет переписан в этот файл вместо 301, перенаправленных на один из моих примеров выше.

Я думал только о перенаправлении, когда URL начинается с c-, но я не уверен, возможно ли это или как этого добиться.

Так что c- (все) / springkussen-in-gorinchem / должно перенаправитьto verhuur / springkussen-in-gorinchem /

Я пробовал следующее:

Сначала:

#LP
RewriteRule ^c-([\w-]+)/([\w-]+)/?$ verhuur/(.*)?alias=$2 [R=301,QSA,L]

А затем:

RewriteRule         ^verhuur/(.*) lp.php?alias=$1 [QSA,L]

Но это показывает следующее в моей строке URL:

verhuur/(.*)?alias=springkussen-in-schiedam

Как я могу сделать это правильно?

1 Ответ

0 голосов
/ 22 мая 2018

Должно работать следующее:

RewriteEngine on


RewriteRule ^c-[^/]+/(.+)$ /verhuur/$1 [L,R=301]
...