Solr를 테스트하는데,
한대의 서버에 php에서 localhost:8983으로 다음과 같이 접속시.. permission denied 에러가 발생한다.
file_get_contents ('http://localhost:8983/solr/product/select?q=*%3A*&wt=json&indent=true');
php solr client가 내부에서 file_get_contents를 호출하기 때문에 에러발생... ㅠㅠ
한참을 구글링해봐도 해결이 안되었다.. ㅋㅋ 그런데,
우연히 다음과 같은 문제로 해결되었다.
setsebool -P httpd_can_network_connect 1
CentOS를 기반으로 하는 운영체제들은 Ubuntu 기반의 시스템들보다 보안이 좀 더 엄격하다. 두 시스템의 접근방법이 달라서 그런 것인데, Ubuntu는 기본적인 것들은 자유롭게 허용 해 주고 필요한 경우 막는 방식으로 기본값이 설정돼있고, CentOS는 일단 기본적으로 왠만한건 막고 시작한다.
모든설정값을 보는경우..
getsebool -a
지정된 설정값을 보는경우..
getsebool boolean-name
자세한 정보는 다음을 참고하자..