2017-09-10 10 views
0

저는 2 개의 프로젝트를 실행하는 Vagrant-driven 인스턴스를 가지고 있으며 모든 인스턴스가 원활하게 작동합니다. 내 프로젝트에는 서버 인스턴스와 클라이언트 인스턴스가 있습니다. 그들은 REST를 통해 의사 소통을합니다. ? 내가 에서 농가 외부 CLI 컬를 사용하여 내 Laravel 클라이언트 인스턴스를 호출하는 경우, XDEBUG_SESSION_START는 = 방랑을 통과, 그것은 PhpStorm에서 그것을 집어 들고 때문에 나는 이것을 알고 난 디버그를 할 수 -CURL을 통해 Vagrant의 SSH 내에서 Xdebug를 트리거하는 방법은 무엇입니까?

그래서, Xdebug는 올바르게 설정해야 정상적으로 : 이제

curl -v http://clientproject.dev?XDEBUG_SESSION_START=vagrant 

, 나는 농가의 CLI 내에서 동일한 전화을 만들 경우 (즉, 나는 방랑 상자에 SSH'd는데, 위와 같이 컬 명령을 실행) , 트리거하지 않습니다. 이것은 나에게 이해가되지 않는다

나는 그다지 큰 기쁨없이 그물을 닦아 왔으며, 나는 훌륭한 시민들이이 문제를 겪기를 바란다.

서버 인스턴스에서 클라이언트 인스턴스를 XDEBUG 쿠키로 호출하여 개발할 때 개발자가 쉽게 디버깅 할 수 있도록이 작업을 수행하고 싶습니다.

답변

1

좋아요, Xdebug의 작동 방식에 대해 좀 더 자세히 알아 본 후에 Xdebug가 작동하려면 원래의 호출이 IDE와 동일한 시스템에서 이루어져야하기 때문에 작동하지 않는다는 것을 깨달았습니다.

Homestead VM 내부에서 CURL 호출을했기 때문에 XDebug는 IDE로 다시 돌아갈 수있게 만들었습니다.

은 당신이 당신의 컬 호출에 헤더를 설정과 같이해야이 문제를 해결하려면 다음

curl -v http://myclient.dev?XDEBUG_SESSION_START=vagrant --header "X-Forwarded-For: 192.168.10.01" 

경우 물론, 192.168.10.01 방랑의 호스트 시스템의 IP가, 즉 어디에 내 IDE가 있습니다.

모두 지금 사용하십시오!

+1

당신의 대답을위한 ... 이제 나는 내 나머지 API 호출을 모두 디버깅 할 수 있습니다 : D – slier