Linux에선 크론(Cron)을 통해 스케줄링 작업을 실시하는데 이를 활용하면 주기적으로 PHP 페이지를 실행시킬 수 있다.
우선 스케줄링 시간 설정을 위해 Timezone 확인 후 기준이 되는 시간을 맞춰준다.
※ Timezone 변경
1. 현재 Timezone 확인
$ date
2. 시스템 Timezone 위치 확인
$ ls -al /etc/localtime
3. Timezone 변경
$ ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
※ Cron 설치 (Ubuntu 기준)
1. cron 설치
$ sudo apt update -y $ sudo apt install -y cron
2. cron 시작
$ sudo service cron start
3. cron systemctl 등록 및 확인# systemctl 활성화 $ sudo systemctl enable cron.service # systemctl 확인 $ sudo systemctl list-unit-files | grep cron
Timezone을 KST로 맞춰주고 cron 까지 설정하면 서비스 성격에 맞추어 스케줄링 작업을 실시하면 된다.
※ Cron 설정
ㅇ Crontab 형식
minute hour day month weekday user command * * * * * root 명령어
ㅇ Crontab 예시# cron 설정 파일 편집 $ sudo vi /etc/crontab # 평일(월~금) 9~12시 매분 root 권한으로 test.php 파일 실행 및 실행 후 log.dat에 결과 저장 * 9,10,11,12 * * 1,2,3,4,5 root php /var/www/html/test.php >> /var/www/html/log.dat 2>&1 # 평일(월~금) 8시 10분에 root 권한으로 test2.php 파일 실행 및 실행 후 log.dat에 결과 저장 10 8 * * 1,2,3,4,5 root php /var/www/html/test2.php >> /var/www/html/log.dat 2>&1 # cron 재실행 $ sudo service cron restart # cron 상태 확인 $ sudo service cron status
'개발 > Server' 카테고리의 다른 글
[Git] git 충돌 시 강제 덮어쓰기(FETCH) (0) | 2023.04.08 |
---|---|
[git] AWS EC2 서버 GitHub 세팅 (2) | 2023.03.14 |
[Apache] http to https 리다이렉트 설정 (0) | 2023.03.09 |
[Apahce] URL 확장자 .php/.jsp 숨기기 (0) | 2023.03.02 |
[Oracle] 평생무료 웹서버 구축 (feat. APM 세팅) (0) | 2022.10.27 |
댓글