2013-06-10 31 views
10

Tôi đang cố gỡ lỗi với NetBeans Mac cục bộ.XDebug không thể kết nối với khách hàng

Đây là php.ini của tôi

[xdebug] 
xdebug.default_enable=1 
xdebug.remote_enable=1 
xdebug.remote_handler=dbgp 
xdebug.remote_host=localhost 
xdebug.remote_port=9000 
xdebug.remote_autostart=1 
xdebug.remote_log="/Applications/MAMP/logs/xdebug.log" 
xdebug.idekey="netbeans-xdebug" 
zend_extension="/Applications/MAMP/bin/php/php5.4.10/lib/php/extensions/no-debug-non-zts-20100525/xdebug.so" 

Đây là những gì tôi đã nhận được trong xdebug.log

I: Connecting to configured address/port: localhost:9000. 
    E: Could not connect to client. :-(

tôi cố gắng thay đổi cổng 9001 và tắt tường lửa và nó didn' t giúp đỡ.

+1

Đôi khi nó không hoạt động nếu bạn có cùng một máy chủ xdebug được sử dụng cho nhiều IDE –

+0

Làm cách nào để kiểm tra xem tôi có nhiều máy chủ xdebug không? – user1688346

+0

Bạn không có nhiều máy chủ xdebug. Tôi đang nói về một máy chủ nhưng nhiều kết nối IDE –

Trả lời

6

Cổng mặc định của Xdebug (9000) xung đột với FastCGI (Xdebug là đầu tiên!) - giải pháp là thay đổi nó sang một cổng khác. Sau khi thực hiện điều đó, bạn cần phải khởi động lại IDE của bạn, nơi bạn cũng sẽ cần phải cấu hình cổng mới. Bạn cũng sẽ cần khởi động lại PHP và Máy chủ Web của bạn.

+0

Man ... Tôi đã thực hiện một loạt các điều nhưng không đóng IDE của tôi (Sublime Text) và không cấu hình cổng trong IDE của tôi hoặc ... cảm ơn bạn rất nhiều! (Và tôi đang nói điều này sau rất nhiều tìm kiếm) –

3

Bước 1: Thay đổi xdebug.remote_port = 9000 để xdebug.remote_port = 9001

Bước 2:

  1. Thay đổi cổng gỡ lỗi trong Netbeans. Vào Tools >> Options >> Bấm PHP tab
  2. Dưới PHP tab nhấp chuột gỡ lỗi
  3. Thay đổi cổng debugger: 9001
  4. Thay đổi Session ID: NetBeans-Xdebug

Bước 3: Khởi động lại máy chủ và netbeans

Bước 4: Đặt một breakpoint và thử

+0

Bước 2: có bốn bước phụ ....xin lỗi nó đã không tạo ra một dòng mới như vậy xảy ra là một dòng – madi

4

tôi có chính xác cùng một vấn đề. Trình hướng dẫn cài đặt xdebug (https://xdebug.org/wizard.php) cho thấy rằng xdebug của tôi đã được cài đặt đúng. (Trình hướng dẫn bảo tôi cài đặt Xdebug 2.5.0rc1 dll) Trong phpinfo tôi cũng có phần xdebug hiển thị (theo ý kiến ​​của tôi) các giá trị chính xác. Ngay cả với điều này tôi đã nhận được một "không thể kết nối với khách hàng" tin nhắn trong nhật ký lỗi.

Cuối cùng tôi đã giải quyết nó bằng cách dùng thử và thực hiện các lỗi sau: Đã tải xuống tất cả các phiên bản cũ hơn của dll xdebug cho phiên bản php của tôi và đã thử tất cả. Cuối cùng một trong số họ đã làm việc. Đối với tôi đó là với php 5.6.8 xdebug 2.4.1 dll (PHP 5.6 VC11 TS (32 bit)) trên một máy tính Windows 7 32 bit. Tôi đang sử dụng xampp-win32-5.6.8-0-VC11.zip để cài đặt xampp của tôi.

Những gì tôi đã học được những điều sau đây: (a) Trình hướng dẫn Xdebug không neccesarily cung cấp cho các dll đúng để sử dụng (b) Mặc dù phpinfo cho thấy một phần Xdebug với các biến đúng điều này không nhất thiết có nghĩa rằng nó là đúng . (c) Thử các phiên bản cũ hơn của dll nếu bạn gặp lỗi này.

+0

Điều này làm việc cho tôi. Ngoài ra, mặc dù đang ở trên một máy 64 bit, nó là phiên bản 32 bit làm việc cho tôi :) – Isaac