Другие работают на Вас? Я попробовал небольшое количество и каждого, что я попробовал под /shop
бросил мой браузер под wall-decals.html
.
http://wallcandyarts.com/shop/product.cfm/seasons-designer-pillows
становится http://wallcandyarts.com/wall-decals.html/product.cfm/seasons-designer-pillows
.
Преступник является Вашей последней строкой:
redirect 301 /shop http://wallcandyarts.com/wall-decals.html
Redirect
директива основана на соответствии префикса. Как документация выражается:
Redirect /service http://foo2.bar.com/service
If the client requests http://myserver/service/foo.txt, it will be told to access http://foo2.bar.com/service/foo.txt instead.
Это последнее правило, ловя весь из /shop
ударяет каждое правило, под которым это предназначается для чего-то /shop
. Я не абсолютно уверен, как оценка/приоритет обрабатывается для Redirect
, но RedirectMatch
может быть лучшее пригодное для Ваших потребностей (или, по крайней мере, должен использоваться для того последнего правила).
RedirectMatch 301 ^/shop/product\.cfm/frames-wall-decals$ http://wallcandyarts.com/wall-decals/frames-decals.html
...
RedirectMatch 301 ^/shop/?$ http://wallcandyarts.com/wall-decals.html
Во-первых, необходимо ограничить весь тот код в httpd.conf файл, не htaccess. Больше угрозы нарушения безопасности, так как люди могут загрузить его свободно и использовать его против Вас. Что касается неудавшихся перенаправлений... разве целевые страницы не существуют ТОЧНО, как заключено в кавычки в правилах?