2015-06-12 7 views
5

Ich habe ein Problem mit Magento gefunden. Ich habe versucht, eine .tgz gezippte Datei auf Magento hochzuladen, indem ich sie zusammen mit einer anderen PDF-Datei komprimiere. Wenn ich jedoch versuche, es von Magento herunterzuladen, wird die .tgz-Datei beschädigt. Ich habe das bei 4-5 verschiedenen Gelegenheiten mit verschiedenen Dateien gesehen. Daher dachte ich, dass es ein Problem mit Magento ist? Es funktioniert jedoch einfach nur durch Extrahieren der Zip-Datei in den PC..tgz-Datei kann nicht aus Magento heruntergeladen werden

Lassen Sie mich einfach den möglichen Grund und die Lösung dafür wissen.

+1

„Daher dachte ich, es als Problem mit jedoch "? Auch Interpunktion würde den Lesern helfen. – adrien54

+0

überprüfen Sie diese Datei, ob beschädigt oder nicht, über FTP in diesen Magento-Ordner. – DRAJI

Antwort

0

wie über das Herunterladen dieser gezippten Datei über FTP. Möglicherweise gab es eine Unterbrechung, während Sie die Datei über den Browser

+0

Tatsächlich werden meine Kunden die Datei herunterladen, die mit dem herunterladbaren Produkt in Magento verlinkt wird. Die sogenannte .tgz-Datei ist mit bestimmten herunterladbaren Produkten verbunden –

0

Es war wahrscheinlich das Problem, das Sie teilweise aufgrund der Art und Weise ist, wie Magento generiert (möglicherweise inkorrekt) HTTP-Header für komprimierte Elemente. Das Endergebnis ist, dass Elemente beschädigt werden können, weil sie doppelt komprimiert werden können. Es gibt jedoch einige einfache Dinge, die Sie tun können, wenn dies tatsächlich das Problem ist, das Sie haben.

  1. Sie SetOutputFilter DEFLATE nicht
  2. verwenden nicht AddOutputFilterByType DEFLATE application/x-httpd-php
  3. Regeln Verwenden Sie wie bei SetEnvIfNoCase

All dies ist explained in more detail by Babs Gösgens benötigt Ausnahme erstellen, der auch nett genug war, ein Magento .htaccess Vorlage zu liefern Dazu gehören Definitionen für die Behandlung einiger dieser Probleme:

<IfModule mod_deflate.c> 

    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript 
    AddOutputFilterByType DEFLATE application/xml application/xhtml+xml application/rss+xml 
    AddOutputFilterByType DEFLATE application/javascript application/x-javascript 
    #AddOutputFilterByType DEFLATE application/x-httpd-php 

    BrowserMatch ^Mozilla/4 gzip-only-text/html 
    BrowserMatch ^Mozilla/4\.0[678] no-gzip 
    BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html 

    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary 
    SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary 
    SetEnvIfNoCase Request_URI \.(?:pdf|doc)$ no-gzip dont-vary 
    SetEnvIfNoCase Request_URI \.(?:avi|mov|mp3|mp4|rm)$ no-gzip dont-vary 

</IfModule> 
0

Es ist nicht das Problem mit Magento. Es ist das Header-Problem. Auch wie Sie die Datei herunterladen? hast du direkten Link zum Download gegeben? wenn ja dann, dass entfernen und eine benutzerdefinierte Aktion schreiben, die so etwas wie

public function downloadFileAction() { 
     ignore_user_abort (true); 
     set_time_limit (0); // disable the time limit for this script 

     $fullPath = Mage::getBaseDir() . "path_to_your_file/yourFile.tgz"; 

     if ($fd = fopen ($fullPath, "r")) { 
      $fsize = filesize ($fullPath); 
      $path_parts = pathinfo ($fullPath); 
      $ext = strtolower ($path_parts ["extension"]); 
      switch ($ext) { 
       case 'tgz': 
        header('Content-Description: File Transfer'); 
        header('Content-Type: application/octet-stream'); 
        header('Content-Length: ' . $fsize); 
        header('Content-Disposition: attachment; filename=' . $path_parts ["basename"]); 
        readfile($fullPath); 
       default : 
        header ("Content-type: application/octet-stream"); 
        header ("Content-Disposition: filename=\"" . $path_parts ["basename"] . "\""); 
        break; 
      } 
     } 
    } 

zum Herunterladen und rufen Sie Ihre Aktion wie:

$this->getUrl('your_controler') ?>index/downloadFile 

Hope this helfen Ihnen

Verwandte Themen