3

我已经使用 PHP 5 和 Apache 2 的预编译版本设置了 OS X 10.5。我正在尝试设置 Zend 调试器,但没有运气。这是我所做的:

  • 我下载了ZendDebugger-5.2.14-darwin8.6-uni.tar
  • 我创建了目录/Developer/Extras/PHP并将权限设置为:
    • 权限:drwxrwxr-x
    • 所有者:root:admin
  • ZendDebugger.so我从5_2_x_comp目录复制到/Developer/Extras/PHP
  • 我更新/etc/php.ini了文件,添加了以下几行:

    zend_extension=/Developer/Extras/PHP/ZendDebugger.so
    zend_debugger.expose_remotely=always
    zend_debugger.connector_port=10013
    zend_debugger.allow_hosts=127.0.0.1
    
  • 我通过系统偏好设置“共享”面板重新启动了 Apache

当我phpinfo()在 PHP 文件中运行时,我没有提到 Zend 调试器。当我从命令行运行php -m时,它显示 Zend 调试器已加载。两者都声明他们正在运行相同版本的 PHP,并加载相同的 INI 文件。

有人有其他建议让我试试吗?

4

4 回答 4

3

如果我没记错的话,这个问题是因为 Zend Debugger 是为 32 位 Apache 编译的,而 Max OS 10.5 附带的 Apache 是为 64 位应用程序编译的。在 Zend 推出 64 位版本之前,您有两种选择:

1)手动重启Apache进入32位

2) 在 32 位模式下重新编译 Apache 和 PHP。

我实际上还没有开始这样做,但我认为我倾向于重新编译以避免将来出现问题。

于 2008-10-27T17:53:38.037 回答
1

以 32 位模式重新启动就可以了。对于那些希望能够轻松做到这一点的人,这里有一点 AppleScript:

do shell script "apachectl stop" with administrator privileges
do shell script "arch -i386 /usr/sbin/httpd" with administrator privileges

坐在某个地方真是太好了,这样您就可以在需要时快速进入 32 位模式。

于 2008-11-06T21:26:59.110 回答
1

Zend 发布了 Mac OSX 的 64 位版本,所以只需从http://www.zend.com/en/products/studio/downloads下载文件并照常进行。

您必须注册并回答一些问题,但这对我有用。

祝你好运。

于 2011-08-20T03:51:24.970 回答
0

我也是,小时!!非常感谢!!此外,如果由于某种原因您需要在运行后重新启动 apache/httpd(例如,您需要在 php.ini 中进行更改)但是当您运行“sudo arch -i386 /usr/sbin/httpd”时,您会得到这个错误:

(48)地址已在使用:make_sock: 无法绑定到地址[::]:80

在终端窗口中输入:sudo killall httpd

然后“sudo arch -i386 /usr/sbin/httpd”应该可以正常重启apache/httpd。

于 2009-04-20T18:49:12.750 回答