Tôi đặt php.ini
và Debug config
trong phpstorm
. Đang cố gắng để đầu ra php script debug trong phpstorm log tổ chức sự kiện với:Lỗi khi chạy script.php: Cổng 9000 đang bận
"Error running script.php: Port 9000 is busy"
cuối php.ini:
[XDebug]
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_port="9000" (the default port is 9000)
xdebug.profiler_enable=1
xdebug.profiler_enable_trigger = 1
xdebug.profiler_output_dir="/etc/php5/xdebug/profiler_output_dir"
cổng gỡ lỗi trong pStorm cũng được thiết lập trên 9000. netstat -na
đầu ra với:
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
Nếu tôi đặt thành cổng khác. ví dụ: đặt nó thành 10001
dường như thực hiện công việc. Hoặc chỉ cách làm cho nó hoạt động đúng cách. Tôi không chắc liệu tôi có hiểu cách hoạt động của xDebug
hay không. Nó giống như chạy Debug("script.php")(Shift+F9)
trong phpstorm với thiết lập breakpoint trong tập tin?
Có ai đó có ý tưởng không?
EDIT:
Từ: http://xdebug.org/docs/remote
xdebug.remote_port
Type: integer, Default value: 9000
The port to which Xdebug tries to connect on the remote host. Port 9000 is the default for both the client and the bundled debugclient. As many clients use this port number, it is best to leave this setting unchanged.
gì nếu tôi thay đổi cổng cho khác hơn 9000? Có lẽ một cái gì đó hơn 50k.
* "Port 9000 đang bận" * - điều này có nghĩa là một ứng dụng khác (không phải PhpStorm .. hoặc phiên bản PhpStorm hoàn toàn khác) đã được nghe trên cổng đó. IDE lắng nghe (nhận các kết nối) trên cổng đó và xdebug là một trong những người kết nối với IDE và không phải là cách khác xung quanh. Tài liệu xdebug chính thức có giải thích chi tiết về cách xdebug làm việc với trình gỡ lỗi (IDE): http://xdebug.org/docs/remote – LazyOne