드루팔 cron.php을 익명(Anonymous) 아닌 특정 권한으로 실행하는 방법
드루팔 cron.php을 익명(Anonymous) 아닌 특정 권한으로 실행하는 방법을 소개한다.
참고 : http://drupal.org/node/479948#comment-1673488
아래 쉘스크립트로 실행하면 된다.
*** 부분들만 적절하게 상황에 맞추어 수정할 것.
#!/bin/sh
site=http://***yoursite***/
name=***someusername***
pass=***someverysecurepassword***
cookies=/tmp/cron-cookies.txt
wget -O /dev/null --save-cookies /tmp/site-cookies.txt --keep-session-cookies --load-cookies $cookies "${site}user"
wget --keep-session-cookies --save-cookies $cookies --load-cookies $cookies -O /dev/null --post-data="name=$name&pass=$pass&op=Log%20in&form_id=user_login" "${site}user"
wget --keep-session-cookies --save-cookies $cookies --load-cookies $cookies "${site}cron.php"
드루지기는 문제없이 잘 적용됐는데, 위 참고출처에서는 "Invalid Null Command"이라는 에러를 만난 경우도 있는 것 같다.


댓글
2 comments posted드루지기님 항상 좋은 정보 감사 합니다.
참고 해서 개발하고 있는 멀티 사이트에 개별적인 크론 설정을 성공했습니다.
그런데 신기하게도 드루팔 로그에 크론 로그가 남지 않고 실행이 되네요.
이 부분은 좀 더 확인해봐야겠습니다.
로그에 남기기 위해서
실행되는 php 페이지 소스에
watchdog 함수를 사용해서 직접 로그를 남기도록 해결 했습니다.