Intellij

PHPStorm 에서 XDebug 세팅하기

먹세 2018. 5. 17. 17:03

아래 순으로 세팅해주면 됨.


1. Homestead 환경에서 9000번 Port를 뚫어준다.

위 부분은 하면 안됨. 그럼 Xdebug 실행할때 9000번 포트 사용중이라고 에러남.

Xdebug 설정시에는 Homestead.yaml 파일은 아무것도 건드릴게 없다.


2. php.ini 를 세팅하여 xdebug 모듈을 올린다.


3. PHPStorm 에서 디버그 세팅 해준다.



----------------------------------------------------------------------------------------------



1. Homestead.yaml 파일에서 9000번 포트를 열어준다.

# vi ./Homestead/Homestead.yaml


ports:
- send: 9000
to: 9000
# - send: 50000
# to: 5000


위 처럼 세팅해준 후,

vagrant를 halt 해주고 vagrant up --provision 해줘야 한다.

근데 provision을 하면 /etc/nginx/sites-available/local.mydomain.co.kr 파일 설정이 초기화 되기 때문에 이 파일을 다른곳에 미리 복사해둔다.


# cp /etc/nginx/sites-available/local.mydomain.co.kr /etc/


cmd 또는 gitbash 로 ssh에서 빠져나온 후, 


# vagrant halt

# vagrant up --provision 


아까 복사해둔 conf 파일을 다시 제위치로 복사시킨다.


# cp /etc/nginx/sites-available/ /etc/local.mydomain.co.kr


nginx 리스타트


# sudo service nginx restart


위 1번사항은 하면 안됨. 오류남.


2. php.ini 에서 xdebug 모듈을 올려준다.

만약 Homestead를 이용해 vagrant 환경에서 작업한다면 이미 xdebug가 설정되어 있을 것이다.


# cd /etc/php/7.2/mods-available


위 디렉토리 안에 xdebug.ini 파일을 설정해준다.

Homestead를 사용하는 사람들은 이미 설정 되어있을 것이다.


# vi ./xdebug.ini


zend_extension=xdebug.so

xdebug.remote_enable = 1

xdebug.remote_connect_back = 1

xdebug.remote_port = 9000

xdebug.max_nesting_level = 512

xdebug.idekey = "vagrant"


나의 경우는 Homestead를 사용하기 때문에 제일 하단 파란줄 한줄정도만 추가했다.


php 재시작

# sudo service php7.2-fpm restart


phpinfo() 로 xdebug 가 올라와있는지 확인한다.


위 주황색 부분처럼 Xdebug가 나오면 사용이 가능한 상태라는 것.



위 처럼 enable과 port도 확인해준다.



3. PHPStorm 에서 xdebug 환경 세팅

- Ctrl+Alt + S (File->Setting) 메뉴로 진입

- Languages & Frameworks -> PHP -> Debug 진입



Xdebug 부분처럼 포트 세팅


- Debug 밑에 Server 탭에서 아래 내용처럼 Absolute Path on the Server 를 지정해준다.

나의 프로젝트 주소와 서버의 실제 주소를 매핑 시켜주는 작업이다.




여기까지 되면 phpstorm ide 우측 상단에

아래처럼 보이는 아이콘을 클릭해서 디버그 활성화를 시켜준다.




- 위 아이콘 젤 왼쪽부분에 Edit Configurations.. 를 눌러서

Run/Debug Configurations 를 세팅해준다.

+버튼을 눌러서 PHP Web Page 를 선택.

Name과 Server(위에서 Server부분 세팅했던 내역을 불러온다)와

Start URL 을 지정해준다.

Start URL은 디버깅시작할때 자동으로 뜨는 URL 주소다.


여기까지 되면 xdebug를 쓸 준비는 다 되었다.

실제로 Breakpoint를 찍어서 테스트 해보자.


반응형