Comment puis-je déménager ma boutique magento du répertoire de médias?
Je voudrais déplacer le répertoire de médias pour ma boutique magento sur un autre disque sur le serveur.
Regardant app/etc/config.xml
je vois un champ xml:
<config>
<default>
<filesystem>
<media>{{root_dir}}/media</media>
</filesystem>
</default>
</config>
Je m'attends à ce que je pouvais changer cette valeur pour le nouvel emplacement du répertoire et que tout irait bien.
Cependant, en regardant code/core/Mage/Core/Model/Config/Options.php
, je vois que les médias répertoire est défini comme $root.DS.'media';
plutôt que de la configuration xml:
protected function _construct()
{
$appRoot= Mage::getRoot();
$root = dirname($appRoot);
$this->_data['app_dir'] = $appRoot;
$this->_data['base_dir'] = $root;
$this->_data['code_dir'] = $appRoot.DS.'code';
$this->_data['design_dir'] = $appRoot.DS.'design';
$this->_data['etc_dir'] = $appRoot.DS.'etc';
$this->_data['lib_dir'] = $root.DS.'lib';
$this->_data['locale_dir'] = $appRoot.DS.'locale';
$this->_data['media_dir'] = $root.DS.'media';
$this->_data['skin_dir'] = $root.DS.'skin';
$this->_data['var_dir'] = $this->getVarDir();
$this->_data['tmp_dir'] = $this->_data['var_dir'].DS.'tmp';
$this->_data['cache_dir'] = $this->_data['var_dir'].DS.'cache';
$this->_data['log_dir'] = $this->_data['var_dir'].DS.'log';
$this->_data['session_dir'] = $this->_data['var_dir'].DS.'session';
$this->_data['upload_dir'] = $this->_data['media_dir'].DS.'upload';
$this->_data['export_dir'] = $this->_data['var_dir'].DS.'export';
}
Ne serait pas ce que cela signifie que tout changement que j'ai fait pour config.xml
aurait aucun effet sur ma configuration actuelle?
Je suis aussi conscient que ce répertoire devra être web accessible, et que j'ai besoin de configurer les Médias de la Base de l'URL par le biais de l'administration magento outils pour pointer vers ce nouveau répertoire. J'ai l'intention de définir ce nouveau répertoire comme un sous-domaine, et de définir les Médias de la Base des Url vers ce sous-domaine.
Quelqu'un a une expérience avec le déplacement du répertoire de médias?
- Oui, il est regrettable que la config semble être là, mais les valeurs sont codées en dur.
Vous devez vous connecter pour publier un commentaire.
Cela peut facilement être fait au niveau de l'OS, pas besoin de jouer avec Magento. Il suffit de créer un
symlink
media
Pouvez l'ajouter en tant que symbole des liens,
mais vous aurez un problème avec l'éditeur WYSIWYG dans le panneau d'admin 🙂
Besoin suivant:
modifier /app/code/core/Mage/Cms/Helper/Wysiwyg/Images.php
fonction getCurrentUrl()
changement de
Umm, pourquoi hack Magento code, lorsque c'est réellement une configuration de serveur web combinée avec la bonne entrées dans le champs url dans le backend de Magento?
Le sous-domaine est facilement pris en charge avec une entrée CNAME dans votre DNS pour pointer vers le même serveur et un serveur virtuel entrée dans votre fichier de configuration du serveur qui utilise le répertoire sur un autre lecteur que son doc racine (à l'aide d'Apache?).