在本地但不是服务器上工作的querypath

时间:2012-09-17 22:47:24

标签: php development-environment querypath

所以我一直在我的本地环境(使用基于MAMP的php 5.3.6)上使用querypath开发一些东西,但当我把它移到我的开发服务器时它停止工作。我的开发服务器是基于php 5.3.2-1ubuntu4.10的LAMP。我不能为我的生活弄清楚为什么它会对我的本地工作,但不是我的测试。我确实在两种环境中都启用了正确的php扩展。

它似乎与include中的querphath文件有关。 PHP / MySQL在这两种环境中都运行良好。 Querypath要求启用'libxml'和'dom'扩展,它们位于两种环境中。我的php错误日志中没有任何内容,如果querypath有错误日志,那么这是我不知道的。

一个基本的例子是,这将在我的本地环境中获得响应:

<?php

$url = 'http://www.google.com';

$html = htmlqp($url);
print '<h1>TEST</h1>';

print_r ($html);

?>

在我的开发环境中,'TEST'将不会打印,表明在访问querypath时存在某种致命错误。而且,是的,我已严格检查了我的相对路径。

更新:一位同事今天从假期回来,他建议我尝试使用qp()函数而不是htmlqp(),这没有使任何工作更好,但它确实产生错误,这是有帮助的:致命错误:在第158行的/Library/WebServer/Documents/fGalaxy54/fGalaxy54/include/QueryPath/src/QueryPath.php中找不到类'\ QueryPath \ DOMQuery'

因此,由于某种原因,自动加载器没有加载DOMQuery类,我一直在将文件重新复制到服务器以确保事情没有损坏。无论如何,我的同事向我指了一份他在服务器上的其他地方托管的querypath副本,由于某种原因,副本工作正常。所以,什么都没有解决,但我在服务器上的其他地方有一个工作副本。感谢所有评论。

再次编辑以进一步澄清:

querypath自动加载器没有加载DOMQuery类,当我使用不同的自动加载器时,一切都在我的开发环境中工作正常。不确定这是否是某种qp错误,但确实是一个奇怪的怪癖。

0 个答案:

没有答案