Estoy probando algunas redirecciones 301 en .htaccess.
Estoy intentando redirigir algo como esto:
http://creek.com/wines/red/greatwine
en
http://creek.com/shop/product/wines/red/greatwine
pero obtengo el siguiente resultado
http://creek.com/shop/product/red/greatwine?/wines/red/greatwine
Hay muchos subdirectorios diferentes en vinos, por lo que necesito que tengan comodines. Espero que tenga sentido.
Por favor vea mi .htaccess a continuación. ¡Gracias por cualquier ayuda!
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
Respuesta1
@Dan tiene razón.
Debes convertir tu RedirectMatch
en a Rewrite
y colocarlo antes de tu <IfModule mod_rewrite.c>
bloque:
RewriteCond %{REQUEST_URI} ^/wines/(.*)/(.*)
RewriteRule ^(.*)$ http://creek.com/shop/product/$1 [L,R=301]