내 cronjob에서 어떤 결과도 얻지 못합니다. 작업이 실행되는 스크립트는 다음과 같습니다.
<?php
require '/opt/bitnami/apps/wordpress/htdocs/wp-load.php';
include('/opt/bitnami/apps/wordpress/htdocs/wp-content/themes/yeelloe/scheduler.php');
?>
스케줄러 코드는 다음과 같습니다.
<?php
//get the wp-load in for the wordpress functions
$parse_uri = explode( 'wp-content', $_SERVER['SCRIPT_FILENAME'] );
require_once( $parse_uri[0] . 'wp-load.php' );
//now try calling template function
CheckFunction();
?>
출력이 없나요? 임무는 소셜 미디어 게시물을 자동화하는 것이었지만 그것도 작동하지 않았습니다.
어떤 아이디어가 있나요?
답변1
cron이 실제로 스크립트를 실행하고 있다고 확신하시나요? 제가 경험한 것은 이 경우 명령줄이 존재하지 않으면 철자가 틀렸다는 것입니다. cron은 화를 내고 명령을 시작하지 않습니다. 이는 명령줄에 출력이 전혀 지정되지 않았음을 의미합니다(출력 파일도 생성되지 않음).
마지막 관찰은 쉘 라인에 명령을 넣는 것만으로도 PHP 스크립트가 성공적으로 실행될 수 있다는 것입니다. 그렇지 않은 경우에는 애플리케이션 이름을 접두사로 붙여야 합니다.
* * * * * /usr/bin/php /mydirectory/program.php >> output 2>&1
Cron(또는 UNIX/Linux)은 Windows처럼 파일 확장자를 응용 프로그램에 연결하거나 연관시키지 않습니다.