문제

나는 CRON 작업으로 PHP 스크립트를 실행하는 것과 브라우저로 액세스하는 것의 차이가 정확히 무엇인지 혼란스러워한다고 생각합니다. Test.php를 Safari로 치면 테스트 할 때 예상대로 텍스트 파일에 작성, DB 항목 등을 만듭니다. Cron 작업으로 실행되면 텍스트 파일에 쓰기를 제외한 모든 작업을 수행합니다.

나는 이미 파일 시작시 #!/usr/bin/php를 삽입하여 PHP 파서로 향하는 것을 이미 처리했습니다.

Safari를 통해 작동 할 때 내 스크립트가 CRON을 통해 내 텍스트 파일에 쓰지 않는 이유는 무엇입니까?

(이것은 간단한 fopen, fwrite, fclose bit of code이므로, 내가 생각하지 않는다는 것을 밝혀냅니다)

도움이 되었습니까?

해결책

사용자 권한이 될 것입니다. Apache (또는 사용중인 Webserver)가 해당 폴더에 쓸 수있는 권한이있을 수 있지만 Cron 사용자는 동일한 그룹의 구성원을 만들거나 폴더 세계를 문제를 해결 해야하는 폴더를 작성할 수있게하지 않습니다.

세계 쓰기가 좋은 보안 조치가 아닙니다.

다른 팁

fopen을하기 전에 존재하고 쓰기 쉬운 곳으로 chdir를 시도하십시오. 당신은 Cron이 당신의 물건을 어디에서 운영하는지 결코 알지 못합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top