채택완료

리눅스 크론탭 질문

Copy
// a.php

 


<?php
include_once('./common.php');

$sql = "INSERT INTO s
           SET a = 1 ";
sql_query($sql);

# crontab -e 입력후

명령어 * * * * * php /home/www/a.php

라고 했는데 데이터베이스에 자료가 한개도 들어가질 않는데

무엇이 문제일까요 ㅜㅜ 

|

답변 5개 / 댓글 3개

채택된 답변
+20 포인트

include_once('./common.php');

->

include_once('/home/www/common.php');

변경 후,

크론탭에 실행할 내용을, 'php /home/www/a.php'

직접 실행해서 데이터베이스에 자료가 insert 되는지 확인

모두 감사드립니다^^

a.php 파일의 퍼미션을 700으로 수정 하시고 테스트 해 보세요.

답변에 대한 댓글 1개

700 조정후 해봐도 동작하지가 않습니다 ㅜㅜ

아래 처럼 뒤에 처리한 것에 대한 로그를 남겨서 확인해보세요.

물론 a.php에서 다른 방식으로 체크하셔도 되구요.

허나 지금 확인이 어려운것 같으니 크론탭 자체에서 문제가 없는지 확인해보세용.

Copy
* * * * * /usr/bin/php/home/www/a.php > /usr/bin/php/home/www/a.log 2>&1

답변에 대한 댓글 1개

퍼미션 700으로 조정후 이 명령어를 써도 되지가 않아요 ㅜㅜ

php

=> 해당 명령어 전체 경로를 적어주셔야 됩니다

=> 보통은 /usr/local/php/bin/php 인데 실제 경로를 찾아보셔서 설정하시면 됩니다.

답변에 대한 댓글 1개

* * * * * /usr/bin/php /home/www/a.php 라고 했는데도 반응이 없네요 ..ㅠㅠ

답변을 작성하려면 로그인이 필요합니다.