2010-11-29 3 views
1

다른 서버에 컬 연결을 실행하도록 PHP를 가져 오려고합니다. 서버에 연결하려면 프록시를 사용해야합니다. bash에서 env-variable http_proxy를 설정했으며 이는 명령 행에서 PHP 스크립트를 사용하는 동안 올바르게 작동합니다. 그러나, curl 또는 apache에서 wget을 실행하려고 시도하면 오류없이 실패합니다. 서버는 Centos 기본값을 기반으로 SELinux로 구성됩니다. SELinux 구성에 대해 확신이 서지 않으므로 변경되지 않았습니다. 누구도 비슷한 문제가 있습니까?HTTP 프록시를 통한 Apache curl

답변

1

죄송합니다. SELinux가 아파치로 하여금 네트워크로 콜을 수행하는 것을 막는 것과 관련이 있습니다.

setsebool -P httpd_can_network_connect 1 

그때 내가 명령 줄에서 스크립트를 실행하는 데 필요한 적절한 SELinux에 속성을 찾을 수 없습니다 다른 관련 문제를 제시했다 그래서 비활성화 결국 : 아파치가이 작업을 수행 할 수 있도록하려면 실행해야 그것 ... 오 잘.

0

웹 서버 프로세스는 "명령 줄에서 실행"할 때와 동일한 사용자 아래에있을 가능성이 가장 높습니다. 동일한 쉘 환경을 가지고 있지 않을 수도 있습니다. 그러나 컬 요청에 프록시 서버를 명시 적으로 구성 할 수 있습니다. 내가 정확히 그 -x 스위치를 기억한다면. 당신은 또한 많은 논점을 전달할 수 있습니다. 맨 페이지 만 보아라. wget은 프록시도 지원하지만, 내가 설정 한 params에 관해서는 확신합니다. 맨 페이지도 참조하십시오.