2017-06-19 33 views

回答

0

有同樣的問題,在修補程序之前上傳舊lib/Varien/Image/Adapter/Gd2.php並重新工作。

0

我對我的Magento 1.9.3.3版本有同樣的問題。下面修復解決我的問題

擴展此類文件Mage_Core_Model_File_Validator_Image

創建模塊:

Magegeeks_Core_Model_File_Validator_Image克里特文件與以下內容:

class Magegeeks_Core_Model_File_Validator_Image extends Mage_Core_Model_File_Validator_Image 
{ 

    /** 
    * Validation callback for checking is file is image 
    * 
    * @param string $filePath Path to temporary uploaded file 
    * @return null 
    * @throws Mage_Core_Exception 
    */ 
    public function validate($filePath) 
    { 
     list($imageWidth, $imageHeight, $fileType) = getimagesize($filePath); 
     if ($fileType) { 
      if ($this->isImageType($fileType)) { 
       //replace tmp image with re-sampled copy to exclude images with malicious data 
       $image = imagecreatefromstring(file_get_contents($filePath)); 
       if ($image !== false) { 
        $img = imagecreatetruecolor($imageWidth, $imageHeight); 
        imagealphablending($img, false); 
        imagecopyresampled($img, $image, 0, 0, 0, 0, $imageWidth, $imageHeight, $imageWidth, $imageHeight); 
        imagesavealpha($img, true); 
        switch ($fileType) { 
         case IMAGETYPE_GIF: 
          imagegif($img, $filePath); 
          break; 
         case IMAGETYPE_JPEG: 
          imagejpeg($img, $filePath, 100); 
          break; 
         case IMAGETYPE_PNG: 
          imagepng($img, $filePath); 
          break; 
         default: 
          return; 
        } 
        imagedestroy($img); 
        imagedestroy($image); 
        return null; 
       } else { 
        throw Mage::exception('Mage_Core', Mage::helper('core')->__('Invalid image.')); 
       } 
      } 
     } 
     throw Mage::exception('Mage_Core', Mage::helper('core')->__('Invalid MIME type.')); 
    } 

在等/ config.xml文件:

<config> 
    <modules> 
     <Magegeeks_Core> 
      <version>0.0.1</version> 
     </Magegeeks_Core> 
    </modules> 
<global> 
     <models> 
      <sdm_core> 
       <class>Magegeeks_Core_Model</class> 
      </sdm_core> 
      <core> 
       <rewrite> 
        <file_validator_image>SDM_Core_Model_File_Validator_Image</file_validator_image> 
       </rewrite> 
      </core> 
     </models> 
</global> 
</config> 

應用的/ etc/modules/Magegeeks_Core.xml

<config> 
    <modules> 
     <Magegeeks_Core> 
      <active>true</active> 
      <codePool>local</codePool> 
     </Magegeeks_Core> 
    </modules> 
</config> 

希望這能解決您的問題。