【发布时间】:2013-02-21 08:08:24
【问题描述】:
我有一个非常有趣的问题,让我发疯。 :)
我在 CentOS 6.3 系统上设置 Magento 1.5。 Magento 后端正在工作,我有产品、用户,一切都设置好了。 当我打开我的前端时,它似乎坏了。应用了 CSS,第一部分(标题、菜单、搜索栏)被正确渲染,但在那之后,什么都没有……我首先以为我在索引或缓存,所以我重新索引了所有内容,我也清除了缓存。它没有帮助,所以我继续调查。
Firebug 告诉我页面失败并显示 500(内部服务错误) - 奇怪的是 Magento 没有告诉我这个,前端 HTML 文件看起来还不错,更糟糕的是,Apache 和 Magento 都没有日志显示什么!!! 我也用firebug发现服务器返回的html响应不完整,到这里就结束了:
<div class="category-products">
<ul class="products-grid">
<li class="item first"><a href="http://...:8383/wobMagento/featured-products/item.html?___SID=U" title="Smoking" class="product-image"><img src="
就是这样,在 img src=" 部分之后,HTML 就完成了。似乎 Magento 正在抛出异常。
我认为这段代码是导致问题的原因:
<li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
我不知道该怎么做,我会列出我做了什么:
- 我清除了缓存
- 我已重新索引所有内容
- 我已为我的整个 magento 目录添加了 777 个权限
- 我确定 apache 是我整个 magento 目录的所有者
- 我调整了 ${magento}/media 的 .htaccess 文件,尝试使用默认值,添加了一些选项,删除了一些选项,甚至删除了它,这些操作都没有做出任何改变(或者,我能做到的最好是完全屏蔽所有图像)
我可以确认,在后端产品可用并且可以看到,并且不会发生 500 错误。我发现这个确切的产品失败了,我可以编辑它的标签,并且产品的图像显示在后端。
【问题讨论】:
-
如果 /var/log 下的 error.log 和 system.log 为空,请尝试检查 apache 错误日志
-
Apache 日志中也没有任何有用的信息。
-
在我的共享主机 cPanel -> PHP 选择器中,勾选了 GD。我仍然必须在 php.ini 文件中添加 'extension=php_gd2.dll' 才能使其工作。托管服务提供商也禁用了 phpinfo()。
标签: php apache magento magento-1.5