2017-05-10 14 views
2

나는 내 사이트의 루트에 PHP 스크립트가있다. 내 cpanel에 cronjob을 추가했습니다. 아래 그림처럼 기본 데이터베이스 작업과 협력 :Cpanel cronjob not working

<?php 
require_once "classes/class.database.php"; 
$db = new database; 
$db->connectToDB(); 
$data = date("Y/m/d H:i"); 
$res = $db->insertRow("cron",array("datetime"),array($data)); 
echo $res; 
?> 

가 같은 파일에서 내가 예약 할 실제 코드가있는 아래 코드로이 코드를 교체했지만이 작동하지 않습니다. 수동으로 입력하면 작동하지만이 방법으로는 작동하지 않습니다.

리얼 코드 : 나는 그것에 대해 확실 할, 그러나 그것은 수동으로 작동하기 때문에 내 코드에 오류가 있다고 생각하지 말아

<?php 
require_once "/home/domain/subdomain.domain.com/share/share.php"; 
$share = new share; 
$share->sharePosts(); 
?> 

. 이 파일의 출력을 로그 할 수 있습니까? 미리 감사드립니다.

+1

오류보고 'error_reporting (E_ALL)'을 켜십시오. – Akintunde007

+1

요구 사항이 작동하는지 확인하십시오. http://stackoverflow.com/questions/5560751/php-check-if-require-once-content-is-empty – mayersdesign

+0

간단히 말해서 뭔가를 울리면, 나에게 메일을 보낸다. 그러나 오류가 있다면 그렇게하지 않는다. –

답변

0

나는 마침내이 문제를 해결했습니다. 아래 코드로 오류 로깅을 활성화했습니다.

error_reporting(E_ALL); 
ini_set("log_errors", 1); 
ini_set("error_log", "/tmp/php-error.log"); 

저는 직접 메일을 보내려고했습니다 (cpanels 속성 임). 메일이 성공적으로 전송되었습니다. 그런 다음 잘못된 코드를 작성했습니다. (필자는 "required_once"에 잘못된 경로를 썼습니다.) 수동으로 실행하면 치명적인 오류가 발생합니다. 치명적인 오류는 우편으로 발송되지 않습니다. 그런 다음 치명적인 오류를 피하기 위해 "require_once"를 "include"로 바꾼 다음 오류가 있음을 알았지 만 이번에는 나에게 우편으로 보냈습니다. 오류는 '해당 파일 없음'입니다. 그런 다음 "/home/domain.com/yourcron.php"와 같은 오류없이 경로를 시도했습니다. 결론적으로 모든 경로는 "/home/domain.com/yourcron.php"와 같아야합니다.