약간 당혹 스럽습니다.php : file_get_contents()는 CLI에서 작동하지만 서버에서 호출 할 때 작동하지 않습니다. (페이지에서)
일부 URL을 줄이기 위해 bit.ly PHP API를 사용하고 있습니다. 이것은 로컬 호스트에서 잘 작동하지만 - 내 서버 (아파치에서 실행되는 PHP)에서 시도했을 때 file_get_contents()는 빈 문자열을 반환합니다.
나는 나의 아파치 로그를 확인하고 아파치 경고/오류를 볼 수 없습니다, 그래서 나는 (PHP CLI를 사용하여) CL에서 같은 명령 시도 :>php -a
php > $long_url = some_url_encoded_string;
php > echo file_get_contents($long_url);
{"errorCode": 0, "errorMessage": "", "results": {"http://www.example.html": {"userHash": "abc", "shortKeywordUrl": "", "hash": "xyz", "shortCNAMEUrl": "http://bit.ly/foobar", "shortUrl": "http://bit.ly/foobar"}}, "statusCode": "OK"}
사람이 문제의 원인이 될 수 있는지 알고 있나요을 ?
에 위치한 서버는 SELinux를 실행합니까? 그렇다면, 켜져 있어야하는 SELinux 부울'httpd_can_network_connect'가 있습니다. CLI에서 작동하면'allow_url_fopen'이 php.ini에서 켜져 있다고 가정합니다. –
@ 마이클 : 아니요, 서버는 헤드리스 우분투 10.0.4 LTS 설치 – oompahloompah