본문 바로가기

Linux Server 구축/1-2. Web Server

APM - PHP 소스설치


6. PHP 소스설치

[root@localhost php-5.2.8]# pwd
/usr/local/src/php-5.2.8
[root@localhost php-5.2.8]# vi INSTALL - PHP 소스설치와 관련된 매뉴얼이다.

367 Apache 2.0 on Unix systems
368
369    This section contains notes and hints specific to Apache 2.0 installs
370    of PHP on Unix systems.
371
372    Warning
373
374    We do not recommend using a threaded MPM in production with Apache2.
375    Use the prefork MPM instead, or use Apache1. For information on why,
376    read the related FAQ entry on using Apache2 with a threaded MPM
377
378    You are highly encouraged to take a look at the Apache Documentation to
379    get a basic understanding of the Apache 2.0 Server.

- 중략

-------------------------------------------------------------------

[root@localhost php-5.2.8]# ./configure --help - configure 옵션 파일을 볼수 있다.
[root@server3 php-5.2.8]# ./configure --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/apache/conf --with-exec-dir=/usr/local/apache/bin

- 중략

+--------------------------------------------+
| License:                                                                  |
| This software is subject to the PHP License, available in this            |
| distribution in the file LICENSE.  By continuing this installation            |
| process, you are bound by the terms of this license agreement.          |
| If you do not agree with the terms of this license, you must abort      |
| the installation process at this point.                                     |
+--------------------------------------------+

Thank you for using PHP.

[root@localhost php-5.2.8]#


-참고
[root@localhost php-5.2.8]# ./configure
--with-apxs2=/usr/local/apache/bin/apxs
- PHP가 아파치 데몬에 DSO 모듈로 로딩되도록 하기 위해서 apxs파일의 위치를 지정하는 것이다.
--with-mysql=/usr/local/mysql - MySQL과 연동하기 위해 MySQL이 설치되어 있는 디렉토리를 가리킨다.
--with-config-file-path=/usr/local/apache/conf
- php.ini 파일의 경로를 지정하는 옵션이다.
--with-exec-dir=/usr/local/apache/bin
- 아파치 데몬의 실행 경로를 지정한다.
--enable-track-vars 
- HTTP_GET_VARS, HTTP_POST_VARS, HTTP_COOKIE_VARS 배열에 있는 GET/POST/COOKIE변수들이 어디서 왔는지 기억한다.
--enable-trans-sid 
- 보안과 관련된 옵션이다.

==> --enable-track-vars --enable-trans-sid - php 4버전대에서 사용하는 명령어이다.
5버전대에서는 이 명령어가 적용이 안된다.
이럴 경우에는
다시 컴파일 하게 되면 이전의 정보가 남아 있게 되어 정상적으로 컴파일이 안되거나 나중에 충돌이 날 수 있다.

해결책으로는 두가지의 방법이 있다.
1. 컴파일하는 패키지의 현재 폴더를 삭제 후 다시 압축을 풀어 재 컴파일 하는 방법
2.
# make clean 이란 명령어를 통한 방법
- make clean은 커널 컴파일에서 설정한 커널을 초기화시키는 make mrproper와 비슷한 명령어로 패키지 컴파일의 이전 정보를 지워주는 명령어이다.

-------------------------------------------------------------------

[root@localhost php-5.2.8]# make

- 중략

Build complete.
Don't forget to run 'make test'.

[root@localhost php-5.2.8]#

-------------------------------------------------------------------

[root@localhost php-5.2.8]# make install

- 중략

Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /usr/local/lib/php to your php.ini include_path
Installing PDO headers:          /usr/local/include/php/ext/pdo/

[root@localhost php-5.2.8]#

-------------------------------------------------------------------

[root@localhost php-5.2.8]# cp php.ini-dist /usr/local/apache/conf/php.ini
- 소스 디렉토리에 있는 php의 환경설정 파일인 php.ini를 /usr/local/apache/conf 디렉토리에 php.ini라는 이름으로 복사한다.

[root@localhost conf]# pwd
/usr/local/apache/conf
[root@localhost conf]# ls
extra  httpd.conf  httpd.conf.bak  magic  mime.types  original  php.ini
- httpd.conf.bak 파일은 php와 연동되면서 생기는 백업파일이다.

[root@localhost conf]# vi httpd.conf

43 # Dynamic Shared Object (DSO) Support
98 LoadModule php5_module        modules/libphp5.so  - php모듈 추가
 
357     AddType application/x-httpd-php .php .htm .html .inc .php5 .php4 .php3
358     AddType application/x-httpd-php-source .phps


아파치 데몬을 재시작한다.
[root@localhost conf]# /usr/local/apache/bin/apachectl restart

-------------------------------------------------------------------

[root@localhost htdocs]# pwd
/usr/local/apache/htdocs
[root@localhost htdocs]# ls
apache_pb.gif  apache_pb.png  apache_pb22.gif  apache_pb22.png  apache_pb22_ani.gif  index.html
[root@localhost htdocs]# vi phpinfo.php
[root@localhost htdocs]# cat phpinfo.php
<?
phpinfo ();
?>
[root@localhost htdocs]#

-------------------------------------------------------------------

웹브라우저에서 확인






'Linux Server 구축 > 1-2. Web Server' 카테고리의 다른 글

ZendOptimizer  (0) 2008.12.17
PHPMyAdmin  (0) 2008.12.17
Tomcat JSP Server 소스설치  (0) 2008.12.17
APM - Apache 소스설치  (0) 2008.12.16
APM - MySQL 소스설치  (0) 2008.12.16
APM - 소스 설치  (0) 2008.12.16