Saída estranha do RedirectMatch

Saída estranha do RedirectMatch

Estou tentando alguns redirecionamentos 301 em .htaccess.

Estou tentando redirecionar algo assim:

http://creek.com/wines/red/greatwine

em

http://creek.com/shop/product/wines/red/greatwine

mas estou recebendo a seguinte saída

http://creek.com/shop/product/red/greatwine?/wines/red/greatwine

Existem muitos subdiretórios diferentes em vinhos, então preciso que eles sejam curingas. Espero que faça sentido.

Por favor, veja meu .htaccess abaixo. Obrigado por qualquer ajuda!

RewriteEngine On
RewriteCond %{HTTP_HOST} !^creek.com$ [NC]
RewriteRule ^(.*)$ http://creek.com/$1 [L,R=301]

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteRule ^(.*)$ /index.php?/$1 [L]
</IfModule>

RedirectMatch 301 ^/wines/(.*)/(.*)$ http://creek.com/shop/product/$1

Responder1

@Dan está certo.

Você deve converter seu RedirectMatchem a Rewritee colocá-lo antes do seu <IfModule mod_rewrite.c>bloco:

RewriteCond %{REQUEST_URI} ^/wines/(.*)/(.*)
RewriteRule ^(.*)$ http://creek.com/shop/product/$1 [L,R=301]

informação relacionada