Il est possible, via une petite modification du fichier index.php de magento, d’utiliser deux bases de données séparées pour la production et la backoffice. Ces deux base de données devront être en master/master.
Cela permet de séparer les requêtes « gourmandes » du backoffice et ainsi d’avoir une production allégée des opérations de maintenance. Nous assumerons que le document root de production s’appelle « prod » et celui du backoffice « bo« . Ci-dessous la procédure de séparation des bases de données, toute les commandes ci-dessous sont executées depuis le document root de la production.
- Créer deux répertoires de configuration pour la production et le backoffice. Ces deux répertoires seront de préférence hors du document root du site.
mkdir -p ../includes/{prod,bo}_etcln -s ../bo prodcp -a app/etc ../include/prod_etc cp -a app/etc ../include/bo_etc chown -R websrv:websrv ../includes find ../includes -type f -exec chmod 600 {} ';' find ../includes -type d -exec chmod 700 {} ';'
# # $doc_root = $_SERVER["DOCUMENT_ROOT"]; $arrDocRoot = explode( "/", $doc_root ); $cur = $arrDocRoot[ count( $arrDocRoot ) - 1 ]; $arrDocRoot[ count( $arrDocRoot ) - 1 ] = "includes"; $arrDocRoot[] = $cur."_etc"; $etc_dir = implode( "/", $arrDocRoot ); $options = Array( 'etc_dir'=>$etc_dir ); Mage::run($mageRunCode, $mageRunType, $options); # # # Mage::run($mageRunCode, $mageRunType);
Anglais
Espagnol
Français