【发布时间】:2010-01-30 10:20:16
【问题描述】:
我在将 php 和只有 php 连接到 sphinx 守护程序时遇到问题。我已经测试了示例 sphinx php 示例 test.php 并将其缩小为连接问题。
我有以下显示问题的代码,
<?php
$fp = @fsockopen ( '127.0.0.1', '9312', $errno, $errstr,300 );
if(!$fp) {
echo "$errstr ($errno)";
}
?>
每当它从命令行或浏览器运行时,我都会收到以下错误,
Connection refused (111)
我已经验证了以下内容,
- searchd 确实在 9312 端口上运行
- searchd 可以使用 telnet 连接
- 可以在 sphinx api 中使用 test.py 连接 searchd
- php可以连接到80端口
它在 Westhost VPS 上运行,这似乎是个问题,因为它在我的本地测试机器上运行良好。我有现有的代码,它使用 Python 对索引运行搜索,没有任何问题,所以这个代码让我非常困惑。
一些附加信息,
PHP 5.2.5 Sphinx 0.9.9-release
有人知道如何进一步诊断和解决此问题吗?
【问题讨论】:
-
test.php和test.py是如何执行的?都来自 VPS 上的命令行?还是命令行中的 test.py 和 apache 进程中的 test.php?还是……?
-
我已经从命令行测试了,从命令行测试了 test.php,也从 apache 进程中访问了网站。