当我尝试通过wysiwyg编辑器添加图像并尝试保存页面时,响应时间过长我得到了以下错误
a:5:{i:0;s:25:"Unsupported image format.";i:1;s:1001:"#0 /var/www/html/project1/lib/Varien/Image/Adapter/Gd2.php(51): Varien_Image_Adapter_Gd2->_getCallback('create')
#1 /var/www/html/project1/app/code/core/Mage/Adminhtml/controllers/Cms/WysiwygController.php(52): Varien_Image_Adapter_Gd2->open('http://121.0.0....')
#2 /var/www/html/project1/app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Adminhtml_Cms_WysiwygController->directiveAction()
#3 /var/www/html/project1/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('directive')
#4 /var/www/html/project1/app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#5 /var/www/html/project1/app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#6 /var/www/html/project1/app/Mage.php(683): Mage_Core_Model_App->run(Array)
#7 /var/www/html/project1/index.php(87): Mage::run('', 'store')
#8 {main}";s:3:"url";s:150:"/index.php/admin/cms_wysiwyg/directive/___directive/e3ttZWRpYSB1cmw9Ind5c2l3eWcvcmd0LXNsaWRlci1pbWcwMS5qcGcifX0,/key/ceed8184f5f336aafcc307f8623aff45/";s:11:"script_name";s:10:"/index.php";s:4:"skin";s:5:"admin";}
即使页面被保存,我也无法在CMS编辑器中查看图像
答案 0 :(得分:8)
问题是Magento正在生成一个带有管理路径的动态链接。请参阅错误中的第8行:/index.php/admin/cms_wysiwyg/directive/___directive/e3ttZWRpYSB1cmw9Ind5c2l3eWcvcmd0LXNsaWRlci1pbWcwMS5qcGcifX0,/key/ceed8184f5f336aafcc307f8623aff45/
- 这是您的图片的链接,由WYSIWYG生成。
由于此链接最后没有已知的图像扩展名,我假设您产生了错误。
解决方案是只更改admin中的一个设置:
System -> Configuration -> General -> Content Management -> Use Static URLs for Media Content in WYSIWYG for Catalog
至Yes
我发现在第180行(Magento 1.7.0.2中)的/app/code/core/Mage/Cms/Helper/WYSIWYG/Images.php
中检查了此设置,并根据生成的静态链接或动态链接。
答案 1 :(得分:2)
这是一个Magento错误,缺乏对特定商店视图的考虑。
重写getImageHtmlDeclaration()
的方法Mage_Cms_Helper_Wysiwyg_Images
,修改源代码:
$mediaPath = str_replace(Mage::getBaseUrl('media'), '', $fileurl);
到
$mediaPath = str_replace(Mage::app()->getStore($this->_storeId)->getBaseUrl('media'), '', $fileurl);
答案 2 :(得分:0)
您是否检查过此服务器上是否启用了allow_url_fopen?今天我遇到了同样的问题,改变这个问题解决了这个问题。
有几种方法可以改变这种情况:
您必须选择适合您的网络服务器设置的最佳方式。
我修改了我的Apache VirtualHost配置文件以修复它:
php_admin_value allow_url_fopen on
答案 3 :(得分:0)
编辑包含skin文件夹中图像的cms页面时发生异常。因为当我们使用自定义管理主题时,占位符图像在adminhtml TinyMCE中不可用。
修复:将占位符图片从adminhtml / default / default /复制到自定义主题,它将停止这样的例外。
$ <file datamash -Wst' ' -g2 sum 1 | datamash -Wt' ' reverse
38 apples
18 oranges
57 pineapples
答案 4 :(得分:-1)
我有类似的问题。 解决方案是创建folder / media / wysiwyg
答案 5 :(得分:-1)
刷新magento缓存并刷新所有内容