Domanda

Ho spostato il mio vecchio negozio a Magento, sto usando 1.9.2 CE Magento.Il vecchio negozio era attivo e funzionante per anni e non volevo perdere gli URL SEO, quindi quando provo a fare 301 reindirizzamenti, sto affrontando un problema.

Se il vecchio URL ha Index.php in esso, quindi invece di reindirizzare al nuovo URL, i reindirizzamenti Magento alla homepage.

Ho provato a farlo con la riscrittura URL predefinita Magento, con un'estensione di terze parti e ha provato anche Htaccess.Sempre lo stesso risultato.

Ad esempio:

In seguito al codice in .htaccess

Redirect 301 /index.php?main_page=product_info&products_id=161 http://domain.com/catalogsearch/result/?q=sku-161 --- This redirects to homepage (Doesnt work properly)
Redirect 301 /main_page=product_info&products_id=331 http://domain.com/catalogsearch/result/?q=sku-331 --- This redirects to new URL (Works Properly) 
.

Problema è che, tutti i miei vecchi url hanno index.php?In esso, quindi ho bisogno di farlo funzionare in qualche modo.

Qualche idea?

Grazie :)

È stato utile?

Soluzione

Disattiva la direttiva di reindirizzamento in un file .htaccess non corrisponderà alla stringa di query, solo l'URI della richiesta (la parte prima del punto interrogativo).Per abbinare la stringa di query, dovrai utilizzare le direttive di riscrittura e riscrittura.Maggiori informazioni su questo qui: https://simonecarletti.com/blog/2009/01 / Apache-Query-string-reindirizzamento /

Questo dovrebbe funzionare nel .htaccess

RewriteEngine On

RewriteCond %{QUERY_STRING} ^main_page=product_info&products_id=331$
RewriteRule ^index\.php$ http://gearx.local/catalogsearch/result?q=sku-331 [R=301,L]
.

Se tutti gli URL necessari per reindirizzare sono nello stesso formato con un ID numerico, queste due linee dovrebbero prendersi cura di tutti:

RewriteCond %{QUERY_STRING} ^main_page=product_info&products_id=([0-9]+)$
RewriteRule ^index\.php$ http://gearx.local/catalogsearch/result?q=sku-%1 [R=301,L]
.

Si consiglia di reindirizzare all'URL effettivo del prodotto anche se piuttosto che una pagina dei risultati di ricerca.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top