2013-05-13 41 views
15

Tôi đã đọc tài liệu này: http://xdebug.org/docs/remoteXDebug: làm thế nào để gỡ lỗi ứng dụng giao diện điều khiển từ xa?

Tôi có thể gỡ lỗi ứng dụng web của mình.
Nhưng trình gỡ lỗi không khởi chạy cho lệnh giao diện điều khiển.

tập tin .ini của tôi cho XDebug (nó hoạt động):

$ cat /etc/php5/fpm/conf.d/xdebug.ini 
zend_extension=/usr/lib/php5/20090626/xdebug.so 
xdebug.idekey="PHPSTORM" 
xdebug.remote_connect_back=1 
xdebug.remote_enable=1 

tập tin .ini cho cli là như nhau.

Ngoài ra, tôi đã cố gắng thêm export XDEBUG_CONFIG="idekey=PHPSTORM remote_enable=1 remote_connect_back=1" trước khi gỡ lỗi, nhưng không hiệu quả.

Làm cách nào để kích hoạt?

+2

Did bạn kiểm tra [bài đăng trên blog này] (http://blog.jetbrains.com/webide/2012/03/new-in-4-0-easier-debugging-of-remote-php-command-line-scripts/) cho chỉ dẫn? – CrazyCoder

Trả lời

40

Câu trả lời ngắn:

Chúng ta cần phải thiết lập 2 biến môi trường, những hai dòng:

export PHP_IDE_CONFIG="serverName={SERVER NAME IN PHP STORM}" 
export XDEBUG_CONFIG="remote_host=$(echo $SSH_CLIENT | awk '{print $1}') idekey=PHPSTORM" 

Cập nhật: Tốt IDE (ví dụ PhpStorm) sẽ làm điều đó cho bạn, chỉ cần thiết lập thông dịch viên PHP cho một phiên dịch từ xa.

+3

Dòng thứ hai là đủ. – brablc

+1

Trong trường hợp của tôi, dòng đầu tiên cũng là cần thiết. – EasyCo

+0

Tôi đã cố gắng để đặt dòng thứ hai vào '/ etc/php5/cli/php.ini', nhưng vì nó là lạ và không có gì làm việc, tôi googled cho" Ubuntu [xuất khẩu] (http://stackoverflow.com/questions/10841837/the-meaning-of-export-command-in-ubuntu) "và biết rằng nó sẽ được chạy trong ternminal trước khi chạy script php. Nó không rõ ràng từ câu trả lời của bạn cho câu hỏi của riêng bạn. – iVenGO

1

Nhờ @DmitryR cho câu trả lời!

Tuy nhiên, để tránh exportin XDEBUG_CONFIG mỗi lần tôi mở giao diện điều khiển của tôi, tôi đã thêm dòng thứ hai (đó là đủ cho tôi) để tập

~/.bashrc của tôi

export XDEBUG_CONFIG="remote_host=$(echo $SSH_CLIENT | awk '{print $1}') idekey=PHPSTORM" 
Các vấn đề liên quan