No Image

php 에러 메세지 확인

2015-10-22 KENNETH 0

서버에서 php구문을 실행하다보면, 별다른 이유없이 실패하는 경우가 있다. 환경에 따라서 에러메세지를 출력하는 경우도 있으나.. 사이트에 에러메세지가 출력되지 않았으면 무시해되 되는 수준의 에러는 그냥 무시 보안상의 이슈 (나는 개발자가 아니라서 잘은 모르지만)등의 이유로 error_reporting = E_ALL & ~E_DEPRECATED display_errors = Off 이러한 설정을 통해.. 정확히는 display_error만.. 오류가 나오지 않도록 처리하기 때문이다.   php.ini에서 설정을 변경하는 방법도 있으나.. 그랬다가는 기존에 미처 확인하지 못한 에러 메세지들이 주욱~ 나올 수 있기 때문에.. (물론 내 서버에서는 display_errors=on 모드로 사용한다..) error_reporting(E_ALL); ini_set(“display_errors”, 1); 오류가 발생하여 확인하고자 하는 페이지에 이처럼 함수를 넣어서 임시적으로 사용하면 되겠다. display_error 옵션이야 on/off 둘중 하나지만.. 그 위에 잠시 안내한 error_reporting 은 여러 설정이 존재하므로.. http://php.net/manual/kr/errorfunc.configuration.php#ini.error-reporting 에서 확인을 해보시면 되겠다.  

PHP 함수의 mysql 데이터베이스 확장 함수의 고찰

2015-10-13 KENNETH 0

  PHP 함수의 mysql 데이터베이스 확장 함수의 고찰 PHP에서 지원하는 mysql 함수 mysql mysqli pdo-mysql     습관 난 몇년동안 리눅스상에서 APM을 설치할때 mysql을 컴파일해서 설치하고 php설치시 ”–with-mysql=/usr/local/mysql” 등의 옵션을 사용했다. –with-mysql=/usr/local/mysql –with-pdo-mysql=/usr/local/mysql (필요시 추가) 형태로 설치한뒤 추가로 mysqli가 필요한 경우 별도의 모듈형태로 mysqli 를 설치해서 사용했다.. 특별히 큰 이유가 있었던것은 아니고, 그냥 mysql3 + php4.0 시절부터 그렇게 해왔기 때문에 의례 그렇게 했다는게 맞다.   새로운것 헌데 PHP5.3 부터 변경된점중.. mysqlnd 라는것이 있다. 출처 : http://php.net/manual/en/book.mysqlnd.php 위에서 설명한 mysql의 3가지 지원함수의 사용을 위해서 mysql 라이브러리 (컴파일이든 yum, apt 를 이용한 클라이언트/라이브러리 설치) php컴파일시 libmysqlclient 를 사용 해야 했던 전통적인 방식대신 mysql Native Driver 라는 새로운 방식을 php-5.3 부터 지원하게 되었다고… (솔직히 몰랐다;;;;)   라이센스 문제(라기 보다는 주체랄까..) 해결 libmysqlclient 라이브러리가 더이상 필요 없음 같은 얘기지만 내장되어있는 기능을 활성화 시키는 것이기 때문에 설치가 쉽다. PHP의 메모리 관리 시스템의 사용하기 때문에 성능개선(이 있을수 [ more… ]

No Image

eAccelerator 설치 및 연동

2015-07-21 KENNETH 0

1. 다운로드 공식사이트 : http://eaccelerator.net 다운로드페이지 : https://github.com/eaccelerator/eaccelerator/tarball/master (2015/07/20 기준) 메뉴얼 : https://github.com/eaccelerator/eaccelerator/wiki   2. 설치 wget https://github.com/eaccelerator/eaccelerator/tarball/master tar zxvpf eaccelerator*tar.gz cd eaccelerator-* phpize ./configure –enable-shared –with-php-config=/usr/local/bin/php-config make cp modules/eaccelerator.so /usr/local/lib/php/extensions/   3. 설정 php.ini 파일에 아래내용 추가 (extension_dir = “/usr/local/lib/php/extensions” 상황을 가정함) extension=eaccelerator.so eaccelerator.shm_size=”16″ eaccelerator.cache_dir=”/tmp/eaccelerator” eaccelerator.enable=”1″ eaccelerator.optimizer=”1″ eaccelerator.check_mtime=”1″ eaccelerator.debug=”0″ eaccelerator.filter=”” eaccelerator.shm_ttl=”0″ eaccelerator.shm_prune_period=”0″ eaccelerator.shm_only=”0″   4. 디렉토리 생성 원래는 eaccelerator.cache_dir 항목에 설정해준 디렉토리를 생성하라고 설명되어 있으나.. 내가 설치했던 42067ac (출력버넌 1.0-dev)버전에서는 디렉토리를 생성하지 않아도 아파치 재시작후 알아서 생성되는것을 확인할 수 있었다. * 디렉토리 구조 # ls -al /tmp/eaccelerator/99/ total 72 drwx—— 18 nobody nobody 4096 Jul 19 21:30 . drwxrwxrwx 3 root root 4096 Jul 19 21:30 .. drwx—— 18 nobody nobody 4096 Jul 19 21:30 0 drwx—— 18 nobody nobody 4096 Jul 19 21:30 1 drwx—— 18 nobody nobody 4096 Jul 19 21:30 2 drwx—— 18 nobody nobody 4096 Jul 19 21:30 3 drwx—— 18 [ more… ]

No Image

php + xcache 설치 및 연동

2015-07-20 KENNETH 0

Install XCache   1. 다운로드 공식사이트 : http://xcache.lighttpd.net 다운로드페이지 : http://xcache.lighttpd.net/wiki/ReleaseArchive (2015/07/20 기준) Latest Stable Release: 3.2.x (full 5.1 ~ 5.6 support) Old Stable Release: 3.1.x (full 5.1 ~ 5.4 support) 이렇게 되어있으므로 최신 버전을 사용하는 분들은 그냥 latest를 사용하심 되겠다.   2. 설치 wget http://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.gz tar zxvpf xcache-3.2.0.tar.gz cd xcache-3.2.0 phpize ./configure –enable-xcache’ ‘–with-php-config=/usr/local/bin/php-config’ ‘–enable-xcache-coverager make cp modules/xcache.so /usr/local/lib/php/extensions/ mkdir /home/ADMIN cp -rv htdocs /home/ADMIN/xcache   3. 설정 php.ini 에 아래내용 추가 (extension_dir = “/usr/local/lib/php/extensions” 상황을 가정함) 참고로 관리자 모드를 사용하지 않는다면 xcache.admin.X 관련 항목은 설정하지 않아도 되며.. xcache.admin.pass 에는 md5 인코딩 값이 들어가기 때문에.. 적절히 생성…. php python 뭐 대충 이렇게…   php -i|grep xcache 결과가 위에 설정한 내용들로 죽 나온다거나.. <?phpinfo();?> 내용에 xcache 관련 내용이 포함되어 있다면 정상적으로 로딩된 것.   4. 관리자 화면   * 아파치 설정 Alias /xcache /home/ADMIN/xcache * 접속 http://youripaddress/xcache