1

我有一个基于 OpenCart(我相信是 1.5.0)的电子商务网站,在插入来自 Alexa.com 的跟踪代码和用于重定向到另一个网站的代码块后,它完全空白。最初它有效,所以我觉得保存备份是安全的。但是刷新页面后它是空白的,我所有的浏览器(firefox、chrome、safari)中的“查看源代码”选项显示没有代码到达它们。然后我开始遵循一系列调试步骤:

  1. 由于我的文本编辑器仍处于打开状态,我撤消了所有更改并重新上传,没有任何更改
  2. 我扫描了文件以确保文本中没有问题,没有发现
  3. 我通过 W3C 验证运行它,有 2 个警告,即 1- 无字符编码和 2- 无法确定解析模式。
  4. 联系主机进行服务器端恢复,尽管他们最早的备份是在问题开始后的一天(花了 3 天的时间争论让他们开始恢复)

关于这些验证警告,我不确定 OpenCart、ASCII 或 UTF-8(验证器使用的)应该使用什么编码或者什么,此外我不确定与 OpenCart 一起使用的模板是否会与之冲突如果我要声明编码。此外,我很难相信如此广泛分布的产品会有如此简单的事情导致如此巨大的错误,因为这样所有用户都会遇到这个问题。

关于解析模式,索引页面确实声明了解析模式(在包含的头文件中)。

除此之外,验证器还声称它根本没有接收到代码,这使得通过该路径确定问题的任何机会都消失了。

页眉和页脚都针对这些添加进行了编辑,但包含在其中的时间相对较长。用于编辑的代码是,对于<!-- tracking code here -->插入到头文件的头部部分的alexa,页脚的代码是:

     <span style="display:inline-block;width:160px;height:30px;text-align:center;border:#000 1px dotted;font-family:Arial,Helvetica,sans-serif;font-size:11px;background-color:#FFFFFF;"><strong style="display:block;padding:0px;margin:0px;">Reputation Management</strong><a href="http://www.submitexpress.com/" title="Submit Express - Search Engine Optimization Services" style="font-family:Arial,Helvetica,sans-serif;font-size:11px;">Submit Express</a></span>

如果需要更多代码来提供帮助,请告诉我,我不是在找人来解决我的问题,而是给我相关的提示来帮助我自己解决问题,或者他们是否提供了解决方案来教育我如何管理它所以我也许可以使用相同的调试方法。谢谢!

编辑:感谢 Jay 发现的问题是“PHP 通知:未定义的索引:第 40 行的* */public_html/graphic-shack.com/index.php 中的 HTTP_HOST”,谷歌搜索没有显示任何有效结果。这对我未经训练的头脑来说是胡言乱语,非常感谢澄清,因为第 40 行实际上是一个空白行,因为它周围的文本由于某种原因我无法发布,但可以在http://graphic-shack 上查看。 com/example.html

4

1 回答 1

1

Open Cart 始终使用 UTF-8,因此绝对最好使用您的主题应该为浏览器设置的主题我要问的第一件事是您是否设置了记录 php 错误的错误报告(NOT OPEN CARTS ONE)?如果没有,那么你需要做类似的事情

php_flag  log_errors on
php_value error_log  /path/to/custom/error.log

在您的 .htaccess 文件中,以便您可以将所有 php 错误记录到文件中。这将需要在您可以获取文件的地方,因此相应地更改路径以便您可以查看它。一旦你有了它,你就会有一个很好的基础来解决这个问题。我很难相信 opencart 已经停止,因为你添加了代码。最可能的原因是文件丢失、空白或在保存时意外写入一半,或者您在不应该的地方有一些额外的 php 代码

== 测试.PHP 内容 ==

<?php
echo '<pre>' . print_r($_SERVER, true) . '</pre>';
?>
于 2011-11-21T16:51:11.677 回答