메뉴 건너뛰기

조회 수 8500 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

PHP 를 매일 일정한 시간에 주기적으로 실행해야 할 경우가 있다.


리눅스의 crontab 기능을 이용하여 PHP 파일을 실행하기 위해 알아야 할 사항

1. PHP 코드에 DB 연결하는 파일 정보는 절대경로로 적어야 한다.

    include "/home/httpd/db.info.php";
    include "/home/httpd/dbClass.php";


2. PHP 코드 상단에 한줄 적어줄 내용

    !#/usr/local/php/bin/php -q

    <?php

        include "/home/httpd/db.info.php";
        include "/home/httpd/dbClass.php";


        PHP 소스코드

     ?>



※ crontab 에서 직접 PHP 코드를 호출해서 돌리는 경우에는 위와 같이 하면 된다.

   첫줄 !#/usr/local/php/bin/php -q 은 PHP 파일의 절대경로인데

   파일의 위치를 모르면

   리눅스 Shell 상에서 whereis php 로 찾으면 된다.

   그리고 해당 경로로 들어가서 실제 php 파일이 있는 곳을 확인해야 한다.


이제 crontab 에 스케쥴할 사항을 등록하자.


1. 크론탭 수정하는 방법
    crontab -e

    입력화면에서 입력하려면 i 를 눌러 insert 모드로 변경하고

    스케쥴링할 내용을 적어준다.

    15 23 * * * wget -O - -q -t 1 http://IP주소/xml/web_member.php

    를 붙여넣기 한 다음에 저장하고 나온다.

2. 크론탭 시작
    service crond start


이 두가지 사항만 하면 매일같이 정해진 시간(23시 15분)에 실행된다.


다른 방법으로 할 경우

shell 스크립트 파일을 작성해서 스크립트 파일을 돌리는 경우에는

shell script

15 23 * * * /home/httpd/xml/cron_member.sh


shell script 파일 안에는

echo "Insert and Update member table of MySQL database..."
/usr/local/php/bin/php -f  /home/httpd/xml/cron_member.php

처럼 작성된 코드가 포함되어야 한다.


cron_member.php 파일에는

DB 파일의 경로는 절대경로를 반드시 적어줘야 한다.



shell script 를 만들어서 사용하는 경우

몇가지 처리를 하나의 스크립트에서 해야 할 때 효과적이다.


2시 5분에 스크립트가 자동으로 실행된다.

5 2 * * * /usr/local/php/bin/php /usr/local/apache/htdocs/accessLog.php


만약 매 5분마다 실행하고 싶다면

*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/accessLog.php

로 해주면 된다.


  1. No Image

    Tomcat 6에 Datasource 설정하기

    Date2017.03.11 Views7624
    Read More
  2. tomcat - server.xml 설정

    Date2017.03.11 Views67349
    Read More
  3. [CentOS 6.5] Virtual Box를 이용한 CentOS 6.5 설치

    Date2017.03.11 Views6600
    Read More
  4. [CentOS 6.5] SSH,TELNET, FTP 설치 및 운용

    Date2017.03.11 Views8558
    Read More
  5. [CentOS 6.5] JDK (JAVA) 설치

    Date2017.03.11 Views8690
    Read More
  6. [CentOS 6.5] Tomcat 설치 및 구동

    Date2017.03.11 Views9483
    Read More
  7. No Image

    TOMCAT/사이트 여러개 운영

    Date2017.03.09 Views8444
    Read More
  8. No Image

    SSH / FTP 등 기본 접속환경 설정(리눅스 / 솔라리스)

    Date2017.02.03 Views7827
    Read More
  9. No Image

    솔라리스 10 (Telnet/FTP/SSH) 설정

    Date2017.02.03 Views7994
    Read More
  10. 아파치 디렉토리 보이는 것 막기

    Date2017.02.02 Views8071
    Read More
  11. No Image

    아파치 로그(Apache Log) 관리법

    Date2017.02.02 Views7871
    Read More
  12. crontab 을 이용한 PHP 스케줄링 작업

    Date2017.02.02 Views8500
    Read More
  13. No Image

    crontab 설정 방법

    Date2017.02.02 Views7215
    Read More
  14. No Image

    apachec rewrite 사용하기 // www 강제 사용 // HTTP to HTTPS // 특정경로만 HTTP

    Date2016.12.30 Views7081
    Read More
  15. No Image

    APACHE, OHS 400 웹로직 연동후 특정 작업에 400 error

    Date2016.12.30 Views8645
    Read More
  16. No Image

    netstat 사용법

    Date2016.12.22 Views8768
    Read More
  17. No Image

    mod_rewrite 예제

    Date2016.12.22 Views7145
    Read More
  18. No Image

    아파치 웹로직 연동(Virtual Host)

    Date2016.11.22 Views8546
    Read More
  19. No Image

    Apache 2.2.17 + WebLogic 10.3.3 연동하기

    Date2016.11.22 Views8795
    Read More
  20. CentOS6.6+httpd2.4.16+Mariadb10.0.20+php5.6.11 Source 설치....

    Date2016.09.25 Views14744
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved