반응형

 

PHP

프로그래밍 언어의 일종

동적 웹 페이지를 만들기 위해 설계되었으며 이를 구현하기 위해 PHP로 작성된 코드를

HTML 소스 문서 안에 넣으면 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 인식하여

작성자가 원하는 웹 페이지를 생성

 

 

1. php 설치

php 컴파일 하기 위해 MySQL 라이브러리 참조

 

 

웹에서 PHP 다운로드

 

 

현재 작업 중인 위치에서 새로운 디렉터리를 생성하고 그안에 압축을 해제

 

컴파일 실행

컴파일 내용

--with-apxs2 = /usr/local/apache/bin/apxs

: apache2 와 연동 지원

 

--with-mysql = /usr/local/mysql

: mysql 데이터베이스 연동

 

--with-mysqli = /usr/local/mysql/bin/mysql_config

: mysqli 지원

 

--with-pdo-mysql = /usr/local/mysql

: pdo mysql 지원

 

--with-libxml-dir = /usr

: xml 처리를 위한 기능

 

--with-freetype-dir

: FreeType 폰트 라이브러리 디렉토리 지정

 

--with-zlib

: ZLIB 지원

 

--with-mcrypt

: mcrypt 로 암호화 과련 기능을 지원

 

--with-mhash

: mhash 지원

 

--enable-sysvsem

: System V Semaphore 를 지원

 

--enable-sysvshm

: System V shared memory 를 지원

 

--enable-bcmath

: bc 스타일의 수학함수를 지원

 

--enable-ftp

: ftp 지원

 

--enable-exif

: 이미지 메타정보 표시를 지원

 

--enable-calendar

: Calendar Conversion 를 지원

 

--enable-pcntl

: Process Control 를 지원

 

--with-gd-native-ttf

: 그래픽 이미지 지원

 

--enable-mbstring

: multibyte 문자열 처리를 위한 지원

 

--enable-sockets

: fsockopen 과 같은 소켓 함수를 쓰기위해서 필요

 

--enable-sysvmsg

: System V message 를 지원

 

--enable-zip

: Zip 파일을 읽고 쓸수 있는 기능 지원

 

configure 스크립트가 생성한 Makefile 을 이용해서 동작

 

 

make install 진행

 

 

php.ini 설정 파일에 필요한 내용 설정

 

 

php 설정 파일 설정 후 Apache 환결설정에서 php모듈 추가 여부 확인

 

 

apache 와 php 연동 확인

 

 

 

반응형
반응형

 

1. php.ini 설정 파일 파악

max_execution_time = 60

최대 실행시간

 

max_input_time = 120

스크립트 페이지로 넘어가기전에 php엔진이 데이터 업로더를 받는 시간

 

memory_limit = 256M

메모리 사용량 제한

 

posrt_max_size = 5G

Post 방식으로 넘겨질 최대 데이터 사이즈 설정

 

upload_tmp_dir = "/var/tmp"

임시 폴더 지정, 파일 업로드 할 때 위의 폴더에 임시 저장

 

upload_max_filesize = 5G

최대 업로드 데이터 사이즈 설정

 

max_file_uploads = 50

한번에 업로드 가능한 파일 갯수

 

data.timezone = Asia/Seoul

시간대 설정

 

file_upload = on

파일 업로드를 허용 여부 설정

 

max_execution_time = 300

최대 실생시간 설정

 

display_errors = on

php 스크립트 발생 시 웹상에 보여줄 지 선택 여부

 

log_errors = on

php 실행 중 발생하는 경고나 에러 정보를 error_log에서 지정한 파일에 기록하게 되므로 의도적인 에러 발생 시도를 확인해 볼 수 있음

 

session.cookie_lifetime = 0

세션이 끊기지 않고 유지

 

safe_mode = off

php에 의한 파일 액세스 시 권한 점검

 

allow_url_fopen = on

URL을 파일로서 취급 여부 결정

 

engine = on

apache 상에서 php의 스크립트 언어 엔진 유효 여부

 

short_open_tag =on

<? 태그 사용 여부

 

precision = 12

부동 소수점 표시할 때 유효 자리 수 설정

 

expose_php = off

웹 브라우저의 요청에 대해 php 정보 노출 방지

 

register_globals = off

php 가 입력으로 받아들이는 값을 무조건 전역변수로 다루게 됨

 

 

 

 

2. extension 을 이용한 mysqli 설치

 

mysqli  ?

: MySQLi Extension PHP 스크립팅 언어에서 MySQL 데이터베이스와의 인터페이스를 제공하는 데 사용되는 관계형 데이터베이스 드라이버

 

phpize 실행

 

설치 진행

 

컴파일 완료

 

모듈 복사

 

php.ini 설정파일에 extension 디렉터리 경로와 모듈명 추가

 

 

mysqli 설치 확인

 

 

 

php -i 옵션

 

그 외의 옵션

-a : 대화식으로 실행

-e : 디버거 / 프로파일 러에 대한 확장 정보 생성

-f <file> : <file> 구문 분석 및 실행

-h : 도움말

-l : 구문만 검사

-m : 모듈로 컴파일 된 것으로 표시

-r <code> : 스크립트 태그 <? ..?>를 사용하지 않고 PHP <code>를 실행

-B <begin_code> : 입력 라인을 처리하기 전에 PHP <begin_code>를 실행

-R <code> : 모든 입력 줄에 대해 PHP <code>를 실행

-F <file> : 모든 입력 줄에 대해 <file> 구문 분석 및 실행

-B <begin_code> : 모든 입력 행을 처리 한 후 PHP <end_code>를 실행

-s : 색상 구문으로 강조 표시된 소스를 표시

 

 

 

4. php engine off 설정 후 접근 (phpinfo.php로 확인)

 

php_admin_flag engine off 하여 접근 차단

 

특정 디렉토리에서 php 실행금지

 

php_flag engine off 만 하면 실행은 안되고 php 파일이 다운로드 됨

 

 

 

 

 

 

반응형

+ Recent posts