Xdebug là một extension dành cho PHP, cung cấp rất nhiều tính năng nhằm cải thiện quá trình phát triển với PHP, nhất là trải nghiệm về quá trình debug. Đối với một PHP developer thì có thể nói rằng đây chính là một công cụ hữu ích giúp tìm và gỡ lỗi một cách hiệu quả.
Nếu như việc cấu hình Xdebug đối với các công cụ như XAMPP, MAMP hay Laragon có vẻ đơn giản thì với Devilbox sẽ có phần khó khăn hơn một chút. Đó là vì Devilbox vận hành dựa trên Docker cho nên có thể nói đây chính là cấu hình Xdebug trên Docker. Tuy nhiên, bạn hãy yên tâm vì nó không phải khó đến nỗi không làm được đâu.
3.2.0
.Nếu như không tìm thấy, bạn hãy kiểm tra lại khóa PHP_MODULES_DISABLE
trong tập tin .env
.
xdebug.ini
cho môi trường PHP hiện tại bên trong thư mục chứa Devilbox. Tùy thuộc vào phiên bản PHP mà sẽ có đường dẫn tương ứng. Đường dẫn tương ứng sẽ là path/to/devilbox/cfg/php-ini-[x]
. Trong đó, [x]
sẽ tương ứng với phiên bản PHP hiện tại. Ví dụ ở đây chúng ta đang dùng PHP 8.1
thì đường dẫn sẽ là cfg/php-ini-8.1
. Nội dung của tập tin xdebug.ini
sẽ tương ứng như sau:xdebug.mode=debug
xdebug.client_port=9000
xdebug.client_host=docker.for.lin.host.internal
xdebug.start_with_request=yes
xdebug.max_nesting_level=250
xdebug.remote_log=/var/log/php/xdebug.log
Sau đó, hãy khởi động lại Devilbox và kiểm tra lại mục xdebug đã nhận cấu hình mới hay chưa?
Nếu đang sử dụng môi trường WSL, bạn hãy đổi giá trị xdebug.client_host
thành host.docker.internal
.
├── devilbox
├── projects
└── my_project
├── index.php
└── public -> .
Chỉ cần cơ bản như vậy thôi! Sau khi đã hiểu rõ các bước, bạn sẽ biết cách để tự cấu hình cho các dự án khác. Hãy bắt đầu với trình soạn thảo phổ biến nhất: Visual Studio Code.
my_project
bằng VS Code, chọn Run → Add Configuration. Sau đó thay đổi toàn bộ nội dung của tập tin launch.json
như sau:{
"version": "0.2.0",
"configurations": [
{
"name": "Devilbox XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings": {
"/shared/httpd/my_project": "${workspaceFolder}"
}
}
]
}
Như các bạn thấy, chúng ta đang ánh xạ thư mục dự án hiện tại với thư mục dự án bên trong PHP container và sử dụng port 9000
của Xdebug.
index.php
một chút. Các bạn có thể thay đổi nội dung tùy ý.my_project
: http://my_project.dvl.to. Quay lại VS Code và xem kết quả.Rất đơn giản phải không nào? Tiếp theo sẽ là một IDE vô cùng nổi tiếng không kém VS Code. Đó là PHPStorm.
my_project
bằng PHPStorm. Chọn File → Settings, chuyển sang mục PHP → Servers. Sau đó thêm mới một PHP Server với nội dung như sau:Các bạn có thể thấy phần path mapping
cũng cấu hình tương tự như VS Code. Chúng ta sẽ ánh xạ đường dẫn thư mục dự án tương ứng với đường dẫn trong PHP Container.
my_project
: http://my_project.dvl.to. Quay lại PHPStorm và xem kết quả.Đúng là đơn giản như đang giỡn phải không nào?
Trên đây là hướng dẫn cấu hình Xdebug cho Devilbox dựa trên hai phần mềm soạn thảo mã nguồn nổi tiếp là Visual Studio Code và PHPStorm. Cũng xin lưu ý, nền tảng mà tôi đang sử dụng để cấu hình là Ubuntu 22.04.2 LTS. Với các nền tảng khác, các bạn vui lòng tham khảo trên trang tài liệu tại đây. Còn nếu gặp vấn đề khi cấu hình có thể xem thêm phần thảo luận tại đây.
Nếu cần thảo luận thêm, đừng ngại để lại bình luận bên dưới. Về cơ bản, phần thiết lập môi trường phát triển với PHP có thể nói đến đây là chấm dứt. Đến lúc này, tôi rất tin tưởng vào sự đơn giản và linh hoạt mà Devilbox đã mang lại. Hy vọng các bạn cũng cảm thấy như vậy. Tuy nhiên để cho trọn vẹn, tôi sẽ hướng dẫn thêm một số chủ đề về Devilbox như cài đặt các PHP framework phổ biến. Và không nói nhiều nữa, trong phần tiếp theo, chúng ta sẽ cùng nhau tìm hiểu cách cài đặt Laravel trên Devilbox.