Php 在使用Xdebug之前,我是否必须制作网站的本地版本?

Php 在使用Xdebug之前,我是否必须制作网站的本地版本?,php,debugging,joomla,xdebug,Php,Debugging,Joomla,Xdebug,我正试图找到一种调试joomla powered网站的方法。这对我来说是一个非常新的领域,因此我在本页上遵循使用IDE的步骤:以及其他一些相关页面,用于配置eclipse、xdebug等 正如页面所示,xdebug是一种流行的调试工具。我以前从未听说过它,现在我只知道它是PHP的一个扩展,可以帮助调试。我注意到,在我的XAMPP安装中,安装了xdebug,至少在php.ini中有一个xdebug部分,但是在我的Web空间中,php.ini中没有xdebug部分。因此,我的问题是: 1由于我的We

我正试图找到一种调试joomla powered网站的方法。这对我来说是一个非常新的领域,因此我在本页上遵循使用IDE的步骤:以及其他一些相关页面,用于配置eclipse、xdebug等

正如页面所示,xdebug是一种流行的调试工具。我以前从未听说过它,现在我只知道它是PHP的一个扩展,可以帮助调试。我注意到,在我的XAMPP安装中,安装了xdebug,至少在php.ini中有一个xdebug部分,但是在我的Web空间中,php.ini中没有xdebug部分。因此,我的问题是:

1由于我的Web空间的php.ini中没有xdebug部分,这是否意味着我的Web服务器不支持xdebug?如果是,是否有任何web托管公司提供xdebug,或者至少提供这种可能性

2无论xdebug如何,是否可以调试设置断点、监视变量等。。远程服务器中joomla站点中的PHP文件?在调试之前将站点克隆到本地是否是一种常见做法

3我的xampp控制面板版本是3.2.1。关于XAMPP中的xdebug配置,在这一页上,它说对于Windows,它应该类似下面的示例:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable=true
xdebug.remote_host=localhost
xdebug.remote_port=10000
xdebug.remote_handler=dbgp
但是,我的php.ini中的xdebug部分如下所示

[XDebug]
;zend_extension = "D:\xampp\php\ext\php_xdebug.dll"
;xdebug.profiler_append = 0
;xdebug.profiler_enable = 1
;xdebug.profiler_enable_trigger = 0
;xdebug.profiler_output_dir = "D:\xampp\tmp"
;xdebug.profiler_output_name = "cachegrind.out.%t-%s"
;xdebug.remote_enable = 0
;xdebug.remote_handler = "dbgp"
;xdebug.remote_host = "127.0.0.1"
;xdebug.trace_output_dir = "D:\xampp\tmp"

我应该如何编辑它以启用xdebug?具体来说,我需要设置远程端口吗?

您通常不会在实时站点上进行调试,因为您不会在那里编写代码。你不会在现场使用代码,除非它在工作。所以,是的,正常的事情是在本地调试。然而,你是对的,有时你的现场停止工作或有一个问题,你想处理。您当然可以在服务器上记录调试信息,但您需要非常小心,因为它通常有很多行。在您的joomla后端中,检查phpinfo以查看xdebug是否在服务器上的某个位置。我与主机确认,xdebug未安装。我问他们如何安装xdebug,他们说它超出了他们的定制服务范围。看起来我必须访问服务器命令行才能安装xdebug,对吗?老实说,你不想在那里调试。它不是为编码而设置的环境,而是为网络主机设置的环境。如果您遇到某种错误,请在您认为是错误的地方打开日志记录。还要检查apache错误日志,看看您看到了什么。