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… ]

How to get exit code in bash

2015-10-12 KENNETH 0

bash에서 exit code (exit value) 반환받기 형식 : 명령어;echo $? # ls;echo $? 0 # ls aaaa;echo $? ls: cannot access aaaa: No such file or directory 2 이와같이 명령어가 정상적으로 수행 되었을 경우 ”0”을 그렇지 않은 경우 ”0이 아닌 다른 코드”를 반환하게 된다. ”$?” 변수는 명령어가 실행된 다음 종료상태(exit code, exit status)를 알려주기 때문에 어떤 명령어를 실행한 다음, 결과를 확인할 때 사용하면 되겠다.   다음은 쉘 스크립트의 내장 변수 및 exit code 안내이므로 참고하면 좋겠다. 출처 : http://www.ischo.net/board_linux/5188   shell 내장변수 $$ : 해당 프로세스의 PID값 $? : 가장 최근에 실행한 명령의 종료값 $# : 프로그램에 전달된 인수의 개수 $0 : 명령수행시 명령의 이름을 기억하는 변수값 $n : 전달된 n번째 인수(ex:$1,$2) $* : 전달된 인수들 전체를 하나의 문자열로 표시함 $@ : 전달된 인수들 전체를 문자열의 목록으로 표시함 $! : 마지막으로 실행된 백그라운드 프로세스 pid값 Shell exit code ( 내장변수 $? [ more… ]

MS SQL Server 계정의 암호가 만료되었습니다.

2015-10-12 KENNETH 0

대략 잘 사용하다가 DB커넥션이 안되는 오류가 발생   에러내용 쿼리 실행 중 오류가 발생했습니다. 사용자 ‘계정이름’이 로그인하지 못했습니다. 원인: 계정의 암호가 만료되었습니다. 2. 원인 로그인하려는 계정이름의 암호가 만료되었기 때문. sql manager 를통해 에러메세지의 계정 ”속성”을 보게 되면 암호 정책 강제 적용 -> 암호 만료 강제 적용 옵션이 체크되어 있기 때문이며, 이는 로컬보안정책의 보안설정 -> 계정정책 -> 암호정책 -> 최대암호사용기간 에 관계된다고 한다…   3. 해결법 암호만료강제적용 옵션을 해제해 주면 될듯… 난 윈도우쪽을 잘 모르지만… 프로그램을 위해 계정을 생성해서 사용하는 경우라면 굳이 체크해둘 필요가 없지 않을까…