Depuis la version 1.5 ou 1.6, Magento avait un fichier dans le dossier racine nommé get.php
. Ce fichier, en utilisant le core/file_storage_data
modèle, permet aux propriétaires de système Magento de servir leurs fichiers multimédias de produit directement à partir des colonnes d'objets blob dans la base de données sans avoir de fichier image sur le système de fichiers. PHP gère l'envoi du fichier
#File: get.php
function sendFile($file)
{
if (file_exists($file) || is_readable($file)) {
$transfer = new Varien_File_Transfer_Adapter_Http();
$transfer->send($file);
exit;
}
}
Cela vire dans le territoire de l'histoire de Magento, mais pourquoi cette fonctionnalité a- t-elle été développée? Il semble - un peu fou. PHP n'est pas le moyen le plus efficace de servir un fichier, le stockage d'objets blob de MySQL a toujours été instable, et même une implémentation stable d'objets blob de base de données est une tâche difficile à utiliser, et d'après ce que je peux voir, Varien_File_Transfer_Adapter_Http
cela n'ajoute rien tous les en-têtes de mise en cache de ces fichiers.
Est-ce que quelqu'un sait pourquoi Magento a développé cette fonctionnalité? At-elle réellement atteint l'objectif ou le problème qu'il a cherché à résoudre? Quelqu'un l'utilise-t-il?