2013-07-12 2 views
0

결국 Cronjob을 통해 실행될 RSS 피드 생성 용 PHP 스크립트를 만들었습니다.특정 디렉토리에서 Cronjob 실행하기

모든 PHP 파일과 결과 RSS XML은 웹 사이트의 하위 폴더 내에 있습니다. 내 로컬 개발 컴퓨터에서 동일한 디렉토리에있는 동안 터미널이나 브라우저를 사용하면 php 스크립트가 내 로컬 dev에서 제대로 실행됩니다. 크롬에서 dorss.php 파일로 이동 않는 한 잘 작동

e.g. php /Library/WebServer/Documents/clientname/siteroot/rss/dorss.php 
.

CronJob은 rss와 같은 폴더 또는 그 하위 폴더에있는 require_once()로 지정된 파일을 찾을 수 없다는 오류와 관련하여 실행했습니다.

짧은 이야기 나는 include 파일을 올바르게 참조 할 수 있도록 dorss.php 파일과 동일한 디렉토리에서 Cronjob을 실행해야합니다.

cronjob에 설정에 대한 내 지식은 아주 난이 crontab 파일의 동일한 명령 줄에서이 작업을 수행하는 (명령을 실행하기 전에 디렉토리를 변경)이 가능한 모든 경우 물어보고 싶은게 또는 그렇지 않은 경우가 될 수있는 방법을 너무 제한됩니다

성취하셨습니까?

현재 cronjob를 명령 존

TIA

0 0,6,12,18 * * * /usr/bin/php /var/www/vhosts/clientname/stagingsite/rss/dorss.php 

입니다

답변

2

더 나은 솔루션이 있는지 잘 모르겠지만, 내가 전에 올바른 디렉토리로 변경하는 bash는 스크립트를 작성하는 제안 PHP 파일을 실행하고 cron을 사용하여이 스크립트를 실행합니다. 예컨대 :

#!/bin/bash 
cd /Library/WebServer/Documents/clientname/siteroot/rss/ 
php dorss.php 

심지어 단지 :

#!/bin/bash 
php /Library/WebServer/Documents/clientname/siteroot/rss/dorss.php 

그것을 저장 어딘가에 그것을 실행하는 크론를 사용합니다.

5

당신은 당신이 원하는 하나에 디렉토리를 변경 한 다음이 수행하여 그 디렉토리에서 PHP를 실행할 수 있습니다

cd /var/www/vhosts/clientname/stagingsite/rss/
&&
/usr/bin/php dorss.php

그것은 bash는 스크립트를 만드는 것보다 쉽다는 여기입니다 결과 :

0 0,6,12,18 * * * cd /var/www/vhosts/clientname/stagingsite/rss/ && /usr/bin/php dorss.php 
관련 문제