라라벨 코드가 실시간으로 반영안되는 문제 해결 방법
요즘 저는 라라벨로 개발을 하고 있습니다. 그런데 조금 이상한 것이 코드 에디터에서 수정을 하고 웹사이트에서 리프레쉬를 하면 코드가 반영이 안되는 것이 아니겠습니까?
그래서 이유를 알 수 없어 불편해하며 프로그래밍을 하고 있었는데 그 답을 알게 되었습니다.
같이 라라벨이나 PHP로 코딩하시는 분들 중 같은 문제를 겪으시는 분들이 있으실까 글을 남깁니다.
이는 라라벨 자체의 캐싱 문제가 아닙니다. 그보다는 PHP의 php.ini 세팅의 문제였습니다.
PHP에는 OPcache 옵션이 있으며 이 때문에 바로바로 뷰 파일이 리프레쉬 되지 않는 것이 이유였습니다.
그래서 opcache의 opcache.revalidate_freq=60을 opcache.revalidate_freq=0으로 변경을 하면 코드가 바로 반영됩니다.
방법
윈도우 검색 창에서 php.ini를 치고 해당 파일의 위치로 갑니다.
php.ini 파일을 에디터로 열고 opcache 검색.
opcache.revalidate_freq=60을 opcache.revalidate_freq=0으로 변경.
PS)
opcache란?
OPcache는 PHP script 를 bytecode로 컴파일한 후에 공유 메모리에 저장하여 성능을 향상시키는 모듈이다.
물론 있으면 좋겠지만 바로 코드 수정 확인이 필요할 때는 꺼두어도 좋을것 같습니다!