php 는 보통 APM 으로 웹프로그래밍에 주로 쓰인다.

그런데, 꼭 웹프로그래밍에만 쓴다는 것은 아니다. php 를 CLI (Command Line Interface) 로 써서 서버관리용으로 쓰기에도 편하다.
보통 shell 프로그래밍이라고도 하는데, perl , python 등도 주로 사용된다.

cron 으로 등록해놓고 사용하는데, ubuntu 에서는 주의할 부분이 있다.
centos 등 다른 배포판은 어떤지 모르겠다.(다를것이다)

우분투는 /etc/php5/apache2 , /etc/php5/cli  라는 다른 디렉토리에 php.ini 을 사용한다.
php.ini 을 수정해서 쓰고, CLI 모드로 사용하는 경우 cli/php.ini 도 수정해 준다.
그렇게 사용하지 않는 다면 프로그램내에 ini_set 함수를 써서 옵션을 변경해서 사용해도 된다.
ini_set("memory_limit", "32M");
이런식으로 사용한다.

php 를 cron 으로 등록해서 메일을 보내는 메일링시스템에 적용중이다.
그런데, 메일을 보낼때 첨부파일이 커지는 경우 memory_limit 에러가 난다.
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 17623691 bytes)
위와 같은 에러가 난다. 진한부분의 값에 맞게 memory_limit 값을 조정한다.


postfix 를 쓰는 경우
postfix/sendmail[26637]: fatal: root(0): message file too big
이런식의 에러가 날 수도 있다. postfix 는 기본으로 10M 이하로 제한하고 있는 듯 하다.
이것을 늘려주려면, /etc/postfix/main.cf 에 다음을 추가해준다.
message_size_limit = 20480000
대략 20M 정도를 잡아줬다.
기본값 "default: 10240000 bytes" 라고 한다.(byte 계산을 저렇게 하는게 아니었던 것 같은데?)

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret