SeFi Posted January 14, 2014 Share Posted January 14, 2014 (edited) Hi, I have an old prestashop website http://www.jeans-vintage.com/ (in french). I want to do some 301 redirects to the new domain which is http://www.destock-vintage.com/ . So I modified Jeans-Vintage htaccess : For example for the Men Polos category : RedirectPermanent /70-polos http://www.destock-vintage.com/24-polos-vintage The redirection is working you can test it here : http://www.jeans-vintage.com/70-polos But when the new page loads here is the URL : http://www.destock-vintage.com/24-polos-vintage?id_category=70 Why do I have that "?id_category=70" ?? It's doing the exact same thing for every 301 redirect I'm trying... Any help would be appreciated ! Thanks guys Htaccess jeans-vintage : # .htaccess automaticaly generated by PrestaShop e-commerce open-source solution # WARNING: PLEASE DO NOT MODIFY THIS FILE MANUALLY. IF NECESSARY, ADD YOUR SPECIFIC CONFIGURATION WITH THE HTACCESS GENERATOR IN BACK OFFICE # http://www.prestashop.com - http://www.prestashop.com/forums SetEnv PHP_VER 5 SetEnv REGISTER_GLOBALS 0 AddHandler application/x-httpd-php52. Php. Php5. Php4. Php3 AddOutputFilterByType DEFLATE text/javascript application/javascript text/css application/xhtml+xml text/html FileETag none Header set Cache-Control "max-age=2592000" Header set Cache-Control "max-age=604800" Header set Cache-Control "max-age=600" Header unset Cache-Control <IfModule mod_rewrite.c> # URL rewriting module activation RewriteEngine on RedirectPermanent /70-polos http://www.destock-vintage.com/24-polos-vintage # URL rewriting rules RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2$3.jpg [L] RewriteRule ^([0-9]+)\-([0-9]+)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2.jpg [L] RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$1$2.jpg [L] RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$1$2$3.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$1$2$3$4.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8.jpg [L] RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9.jpg [L] RewriteRule ^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/c/$1$2.jpg [L] RewriteRule ^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$ /img/c/$1.jpg [L] RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/c/$1$2.jpg [L] RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L] RewriteRule ^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L] RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]*(/[a-zA-Z0-9-]*)+ /category.php?id_category=$1&noredirect=1 [QSA,L] RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]* /category.php?id_category=$1 [QSA,L] RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*) /supplier.php?id_supplier=$1 [QSA,L] RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*) /manufacturer.php?id_manufacturer=$1 [QSA,L] RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms=$1 [QSA,L] RewriteRule ^content/category/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms_category=$1 [QSA,L] RewriteRule ^page-non-trouvee$ /404.php [QSA,L] RewriteRule ^adresse$ /address.php [QSA,L] RewriteRule ^adresses$ /addresses.php [QSA,L] RewriteRule ^authentification$ /authentication.php [QSA,L] RewriteRule ^meilleures-ventes$ /best-sales.php [QSA,L] RewriteRule ^panier$ /cart.php [QSA,L] RewriteRule ^contactez-nous$ /contact-form.php [QSA,L] RewriteRule ^bons-de-reduction$ /discount.php [QSA,L] RewriteRule ^guest-tracking$ /guest-tracking.php [QSA,L] RewriteRule ^historique-des-commandes$ /history.php [QSA,L] RewriteRule ^identite$ /identity.php [QSA,L] RewriteRule ^jeans-vintage$ /index.php [QSA,L] RewriteRule ^fabricants$ /manufacturer.php [QSA,L] RewriteRule ^mon-compte$ /my-account.php [QSA,L] RewriteRule ^nouveaux-produits$ /new-products.php [QSA,L] RewriteRule ^commande$ /order.php [QSA,L] RewriteRule ^details-de-la-commande$ /order-follow.php [QSA,L] RewriteRule ^quick-order$ /order-opc.php [QSA,L] RewriteRule ^avoirs$ /order-slip.php [QSA,L] RewriteRule ^mot-de-passe-oublie$ /password.php [QSA,L] RewriteRule ^promotions$ /prices-drop.php [QSA,L] RewriteRule ^recherche$ /search.php [QSA,L] RewriteRule ^plan-du-site$ /sitemap.php [QSA,L] RewriteRule ^magasins$ /stores.php [QSA,L] RewriteRule ^fournisseurs$ /supplier.php [QSA,L] </IfModule> # Catch 404 errors ErrorDocument 404 /404.php <IfModule mod_expires.c> ExpiresActive On ExpiresByType image/gif "access plus 1 month" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType image/png "access plus 1 month" ExpiresByType text/css "access plus 1 week" ExpiresByType text/javascript "access plus 1 week" ExpiresByType application/javascript "access plus 1 week" ExpiresByType application/x-javascript "access plus 1 week" ExpiresByType image/x-icon "access plus 1 year" </IfModule> FileETag INode MTime Size <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript </IfModule> Htaccess Destock-Vintage : SetEnv PHP_VER 5 SetEnv REGISTER_GLOBALS 0 # ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again # .htaccess automaticaly generated by PrestaShop e-commerce open-source solution # http://www.prestashop.com - http://www.prestashop.com/forums <IfModule mod_rewrite.c> SetEnv HTTP_MOD_REWRITE On RewriteEngine on RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule . - [E=REWRITEBASE:/] RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L] # Images RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [L] # AlphaImageLoader for IE and fancybox RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^images_ie/?([^/]+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 [L] # Dispatcher RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^.*$ - [NC,L] RewriteCond %{HTTP_HOST} ^www.destock-vintage.com$ RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L] </IfModule> #If rewrite mod isn't enabled ErrorDocument 404 /index.php?controller=404 # ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again Edited January 14, 2014 by SeFi (see edit history) Link to comment Share on other sites More sharing options...
SeFi Posted January 14, 2014 Author Share Posted January 14, 2014 Any help guys ? Link to comment Share on other sites More sharing options...
tomerg3 Posted January 14, 2014 Share Posted January 14, 2014 It looks like it's clashing with another redirect you have there, did you manually add any?. I tried adding the following to my local Prestashop, and it redirect to your site correctly. RedirectPermanent /156/70-polos http://www.destock-vintage.com/24-polos-vintage Link to comment Share on other sites More sharing options...
SeFi Posted January 14, 2014 Author Share Posted January 14, 2014 Well where could I add another redirection ? Link to comment Share on other sites More sharing options...
tomerg3 Posted January 14, 2014 Share Posted January 14, 2014 Did you make any custom changes to the htaccess file? Is there any URL related module you use? I don't think you should add anything, but rather remove whatever is causing the additional variable to be included. Link to comment Share on other sites More sharing options...
SeFi Posted January 14, 2014 Author Share Posted January 14, 2014 But I don't know what is causing this... I don't have any other form of module or redirection in place... Link to comment Share on other sites More sharing options...
Burhan BVK Posted January 14, 2014 Share Posted January 14, 2014 Try deleting the Prestashop generated sections and the cache directives from the htaccess of the old site. Link to comment Share on other sites More sharing options...
tomerg3 Posted January 14, 2014 Share Posted January 14, 2014 I would start by pinpointing the problem. You can remove (keep a backup) all the redirect lines that are AFTER the line you added, and try to see if it redirects correctly. (when done, restore the original file) That should help narrow down the issue. Link to comment Share on other sites More sharing options...
SeFi Posted January 14, 2014 Author Share Posted January 14, 2014 (edited) Ok thanks for this, I found the culprit : RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]* /category.php?id_category=$1 [QSA,L] But of course this is the line that makes the category URL "friendly". So if I delete it the redirection works great without that parameter. But on the old website the category links are broken because there not "friendly" anymore... Thanks for helping ! Edited January 14, 2014 by SeFi (see edit history) Link to comment Share on other sites More sharing options...
tomerg3 Posted January 14, 2014 Share Posted January 14, 2014 It looks like you are using an old version of Prestashop, as PS 1.5.6 does not have that line in the htaccess file. Try using a PS 1.5.6 htaccess file. Link to comment Share on other sites More sharing options...
SeFi Posted January 15, 2014 Author Share Posted January 15, 2014 Found the solution : http://stackoverflow.com/questions/21124811/301-redirect-passing-parameters Link to comment Share on other sites More sharing options...
Recommended Posts