Odstranění index.php z adres v administraci
Testováno na Magento 1.8.1
Velice problematické a někdy i naprosto nevhodné může být to, že Magento generuje URL adresy v administraci ve tvaru /index.php/admin/...
. Když používáte mod_rewrite
, je /index.php/
v adrese naprosto k ničemu, navíc přístup na takovou adresu za jistých okolností může končit chybou 404. Řešení jsou v podstatě 2:
- přesměrovávat adresy s
/index.php/
na začátku na verzi bez/index.php/
- donutit Magento, aby adresy s
/index.php/
v administrační části vůbec negenerovalo
Přesměrovávat můžete např. pomocí mod_rewrite
(zdroj)
RewriteRule ^index.php/admin/(.*)$ /admin/$1 [L,R]
Problémem je, že potom v administraci nic neuložíte, protože data z formuláře putují na adresu s /index.php/
, Apache provede přesměrování při kterém dojte k zahození formulářových dat.
Lepším řešením je donutit Magento, aby vůbec část /index.php/
do adres nevkládalo. Toto řeší rozšíření Admin Rewrites. Jeho instalace i použití je jednoduché, stačí postupovat podle návodu na uvedené stránce.
Zdroje
Další zdroje:
- http://www.magentocommerce.com/…ad/37543/P0/
- http://magentowebmaster.blogspot.in/…ite-set.html
- http://www.magentocommerce.com/…hread/34357/
- http://www.magentocommerce.com/…read/178878/
Nalezli jste nějakou chybu, či nepřesnost? Dejte mi o ní vědět!