2015-07-13 3 views
3

С Magento 1,7 FR, у меня есть некоторые правила перенаправления в Htaccess, но не все они работают, и я не могу найти, почему:Magento: некоторые Htaccess перенаправление не работает

Options +FollowSymLinks 
RewriteEngine on 

# This is working 
Redirect 301 /blog/conseils-literie/literie-et-matelas-pirelli.html http://example.com/produits/literie.html 
Redirect permanent /catalogues/ http://example.com/ 

# This is not working ! 
Redirect 301 /produits.html?marque=32 http://example.com/32/bultex.html 
# I replaced it with this but no way ! 
RewriteCond %{HTTP_HOST} ^example.com/produits.html?marque=32 
RewriteRule ^(.*)$ http://example.com/32/bultex.html$1 [R=301,L] 

Я уверен, что есть нет перенаправления URL из бэкэнда!

+0

Это весь ваш файл .htaccess? Вы уверены, что у вас нет правил перезаписи или переадресации, например, в файле httpd.conf? – methode

+0

Я нашел этот симулятор: http://htaccess.madewithlove.be/. Я устал от этих правил: RewriteCond% {QUERY_STRING}^marque = 32 $ \ n RewriteRule^produits.html /32/bultex.html [NC, R, L] ... Симулятор говорит, что все в порядке, но правила не работают в реальном сервере !! – Sam

+0

Добавил щедрость, которая, надеюсь, привлечет достаточное внимание к теме, на которую вы получите ответ. Попробуйте примеры, которые вы получите, а также ** примите ** ответ, который работает. – methode

ответ

1

Это работает отлично на моем сервере:

RewriteCond %{THE_REQUEST} /produits\.html\?marque=([^&\s]+) [NC] 
RewriteRule^/%1/bultex.html? [NE,NC,R,L] 

Удалить или закомментируйте перенаправлять строку в .htaccess и поместите это правило там. Не удаляйте ? от конца целевого URL в противном случае строки запроса «? Капер = 32» будет присоединен к нему и URL будет выглядеть следующим образом:

/32/bultex.html?marque=32 
+2

Это работает! Вы спасли мою жизнь ! Спасибо :) – Sam

+1

Добро пожаловать! приятно слышать, что это сработало. – starkeen