|
설치Apache 1.3.29 + PHP 4.3.4 + MySQL + GD + IMAP 등등 설치 |
예전에 올렸던 APM 설치 업그레이드 버전입니다. 다운로드가 안되는 사이트 및 오래된 버전들을 지우고 최신 버전으로 고쳤습니다. 이번에는 아파치를 DSO 형태로 설치했습니다. 각각의 버전을 다운로드 받기 귀찮으신 분들을 위해 자료실에 모든 자료를 한곳에 모아놨습니다. 혹은 설치가 잘 안되시는 분들도 자료실의 자료를 참고하시기 바랍니다. 제 리눅스 배포판은 레드햇 9 입니다.
설치 하고자 하는 APM 버전은 apache_1.3.29, php_4.3.4, mysql-standard-4.0.17 입니다. 단, MySQL 설치는 별도의 강좌를 참고하기 바랍니다. 아파치 2.x 버전도 거의 동일한 방식으로 설치가 가능하니 참고 바랍니다.
편의상 경어는 생략하겠습니다.
1. RPM을 지운다 (다음중 자신에게 설치된 항목만 지우면 된다. ) 우선 apache, mysql, php 관련 RPM을 모두 삭제한후.. 다음 항목을 참고하여.. 삭제한다.
shell>rpm -qa|grep apache 또는 rpm -qa|grep httpd shell>rpm -qa|grep mysql 또는 rpm -qa|grep MySQL shell>rpm -qa|grep php
rpm -e --nodeps zlib rpm -e --nodeps zlib-devel rpm -e --nodeps curl rpm -e --nodeps curl-devel rpm -e --nodeps freetype rpm -e --nodeps freetype-devel rpm -e --nodeps freetype-utils rpm -e --nodeps gd rpm -e --nodeps gd-devel rpm -e --nodeps libjpeg rpm -e --nodeps libjpeg-devel rpm -e --nodeps mm rpm -e --nodeps mm-devel rpm -e --nodeps libpng rpm -e --nodeps libpng-devel rpm -e --nodeps libungif rpm -e --nodeps libungif-devel rpm -e --nodeps libtiff rpm -e --nodeps libtiff-devel rpm -e --nodeps imap |
2. http://www.gzip.org/zlib/ 에서 zlib 을 다운 받는다.
3. zlib 설치
shell>tar -xvzf zlib-1.1.4.tar.gz shell>cd zlib-1.1.4 shell>./configure -s // libz.so 동적모듈생성 shell>make shell>./configure // libz.a 정적모듈생성 shell>make test shell>make install
shell>cp libz.so* /usr/local/lib
shell>cd /usr/local/lib shell>rm -rf libz.so shell>rm -rf libz.so.1 shell>ln -s libz.so.1.1.4 libz.so shell>ln -s libz.so.1.1.4 libz.so.1
shell>vi /etc/ld.so.conf /usr/local/lib추가 // 라이브러리 경로 추가
shell>ldconfig // 라이브러리 경로 적용명령 |
4. http://curl.haxx.se/download.html 에서 curl 을 다운 받는다.
5. curl 설치
shell>tar -xvzf curl-7.11.0.tar.gz shell>cd curl-7.11.0 shell>./configure shell>make shell>make install |
6. http://sourceforge.net/project/showfiles.php?group_id=4286 에서 mhash의 최신 버전을 다운 받는다.
7. mhash 설치
shell>tar -xvzf mhash-0.8.18.tar.gz shell>cd mhash-0.8.18 shell>./configure shell>make shell>make install |
8. ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/ 에서 libmcrypt의 최신 버전을 다운 받는다.
9. libmcrpyt 설치
shell>tar -xvzf libmcrypt-2.5.7.tar.gz shell>cd libmcrypt-2.5.7 shell>./configure shell>make shell>make install |
10. http://www.fastio.com 에서 clibpdf의 최신 버전을 다운 받는다.
11. clibpdf 설치
shell>tar xvzf clibpdf202r1.tar.gz shell>cd ClibPDF shell>cd source shell>cp Makefile Makefile.orig shell>cp Makefile.Linux Makefile shell>make lib shell>make install |
12. ftp://ftp.sgi.com/sgi/graphics/grafica/flash 에서 swf의 최신 버전을 다운 받는다.
13. swf 설치
shell>tar -xvzf dist.99.linux.tar.Z shell>mv dist /usr/local/swf shell>cd /usr/local/swf shell>cp swf.h include shell>cp libswf.a lib |
14. http://www.engelschall.com/sw/mm/ 에서 mm의 최신 버전을 다운 받는다.
15. mm 설치
shell>tar -xvzf mm-1.3.0.tar.gz shell>cd mm-1.3.0 shell>./configure shell>make shell>make test shell>make install |
16. ftp://swrinde.nde.swri.edu/pub/png/src 에서 libpng의 최신 버전을 다운 받는다.
17. libpng 설치
shell>tar -xvzf libpng-1.2.5.tar.gz shell>cd libpng-1.2.5 shell>cp scripts/makefile.linux Makefile shell>make shell>make test shell>make install |
18. http://prdownloads.sourceforge.net/freetype/freetype-2.1.5.tar.gz?download 에서 freetype 의 최신 버전을 다운 받는다.
19. freetype 설치
shell>tar -xvzf freetype-2.1.5.tar.gz shell>cd freetype-2.1.5 shell>./configure shell>make shell>make install |
20. ftp://ftp.uu.net/graphics/jpeg/ 에서 jpeg의 최신 버전을 다운 받는다.
21. jpeg 설치
shell>tar -xvzf jpegsrc.v6b.tar.gz shell>cd jpeg-6b shell>./configure --enable-shared --enable-static shell>make shell>make test shell>make install |
22. ftp://sunsite.unc.edu/pub/Linux/libs/graphics/ 에서 libungif를 다운 받는다
23. libungif 설치
shell>tar -xvzf libungif-4.1.0.tar.gz shell>cd libungif-4.1.0 shell>./configure shell>make shell>make install |
24. ftp://ftp.remotesensing.org/pub/libtiff/ 에서 libtiff의 최신 버전을 다운 받는다.
25. libtiff 설치
shell>tar -xvzf tiff-v3.6.1.tar.gz shell>cd tiff-v3.6.1 shell>./configure
...중간에 설치하다 물어보면 yes한다 ...
shell>make shell>make install |
26. ftp://sunsite.unc.edu/pub/Linux/libs/graphics/ 에서 t1lib을 다운 받는다.
27. t1lib 설치
shell>tar -xvzf t1lib-5.0.0.tar.gz shell>cd t1lib-5.0.0 shell>./configure
configure finished! Do: 'make' to compile the t1lib-package. Do: 'make without_doc' to compile if you do not have LaTeX. Do: 'make install' to install the t1lib-package.
shell>make without_doc // 위의 내용그대로 필자는 LaTeX가 없기때문에 make하지 않고 make without_doc로 했습니다. shell>make install |
28. http://prdownloads.sourceforge.net/ming/ming-0.2a.tgz 에서 ming-0.2a 를받는다. 이후의 최신버전은 설치상 제약이 많아 필자는 이 버전을 애용한다.
29. ming 설치
shell>tar -xvzf ming-0.2a.tgz shell>cd ming-0.2a shell>make shell>make install |
30. http://www.boutell.com/gd/http/ 에서 gd 최신 버전을 다운 받는다.
31. gd 설치
shell>tar xvzf gd-2.0.9.tar.gz shell>cd gd-2.0.9 shell>./configure shell>make shell>make install |
32. ftp://ftp.cac.washington.edu/imap/ 에서 imap 최신 버전을 다운받는다. imap 설치시 갖가지 소스를 수정하는등 필자도 애로사항이 많았는데, 얼마전에 나온 imap-2004.RC6.tar.Z 를 다운받아 한번에 해결했다.
33. imap 설치
shell>tar -xvzf imap-2004.RC6.tar.Z shell>cd imap-2004.RC6 shell>make lrh (레드햇 7.3 이상 버전) // 구 버전일시 make slx (다른 배포판등은 configure 문서를 참고)
shell>cp ipopd/ipop3d /usr/sbin/ipop3d shell>cp imapd/imapd /usr/sbin/imapd
shell>cp c-client/c-client.a /usr/lib/c-client.a shell>cp c-client/mail.h /usr/local/include/mail.h shell>cp c-client/rfc822.h /usr/local/include/rfc822.h shell>cp c-client/linkage.h /usr/local/include/linkage.h // 더 필요한 헤더가 있을경우 같은방법으로 /usr/local/include 로 복사한다. |
◈ /etc/xinetd.d/ipop3d 를 다음 내용으로 만들어서 pop3가 되게끔 한다.
# default: on # description: This is pop3 service. service pop3 { disable = no flags = REUSE socket_type = stream wait = no user = root server = /usr/sbin/ipop3d log_on_success += HOST DURATION log_on_failure += HOST } |
◈ /etc/xinetd.d/imapd 를 다음 내용으로 만들어서 imap이 되게끔 한다.
# default: on # description: This is imap service. service imap { disable = no flags = REUSE socket_type = stream wait = no user = root server = /usr/sbin/imapd log_on_success += HOST DURATION log_on_failure += HOST } |
◈ shell>/etc/rc.d/init.d/xinetd restart //xinetd 데몬 재가동
◈ shell>telnet localhost 110
Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK POP3 localhost 2003.85 server ready // 이런 문자가 나오면 정상 |
◈ shell>telnet localhost 143
Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4REV1 LITERAL+ SASL-IR LOGIN-REFERRALS STARTTLS LOGINDISABLED] localhost IMAP4rev1 2003.346 at Sun, 1 Feb 2004 22:19:00 +0900 (KST) // 이런 문자가 나오면 정상 |
34. http://ftp.apache-kr.org/httpd/ 에서 아파치 최신 버전을 다운 받는다.
35. Apache를 설치한다
shell> tar -xvzf apache_1.3.29.tar.gz shell> cd apache_1.3.29 shell>./configure \ --prefix=/usr/local/apache \ --enable-shared=max \ --enable-rule=SHARED_CORE \ --enable-module=so
shell>make shell>make install |
36. /usr/local/apache/conf/httpd.conf 파일을 다음과 같이 편집한다.
37. /usr/local/apache/bin/apachectl 을 시작하여 웹에서 확인한다.
![]()
![]()
38. http://www.php.net/downloads.php 에서 php 최신 버전을 다운받는다.
39. php 설치 // 나중에 모듈 설치가 가능하므로 자신에게 필요한 부분만 설치 한다. 강좌이기 때문에 전체 설치함
./configure \ --with-apxs=/usr/local/apache/bin/apxs \ --with-config-file-path=/usr/local/apache/conf \ --with-mysql=/usr/local/mysqll \ --with-zlib-dir=/usr/local \ --with-jpeg-dir=/usr/local \ --with-png-dir=/usr/local \ --with-gif-dir=/usr/local \ --with-tiff-dir=/usr/local \ --with-gd \ --with-freetype \ --with-ming \ --with-cpdflib \ --with-openssl \ --with-gettext \ --with-kerberos \ --with-swf-dir=/usr/local/swf \ --with-mm \ --with-mhash \ --with-mcrypt \ --with-mod_charset \ --with-language=korean \ --with-charset=euc_kr \ --with-regex=php \ --with-dbm \ --with-gdbm \ --with-curl \ --with-ldap \ --with-xml \ --with-imap \ --with-imap-ssl \ --with-ttf \ --with-t1lib \ --enable-module=so \ --enable-gd-native-ttf \ --enable-ftp \ --enable-sockets \ --disable-debug \ --enable-sysvsem \ --enable-sysvshm \ --enable-shmop \ --enable-track-vars \ --enable-freetype-4bit-antialias-hack \ --enable-calendar \ --enable-sigchild \ --enable-magic-quotes \ --enable-trans-sid \ --enable-inline-optimization \ --enable-bcmath
shell>make shell>make install
shell>cp php.ini-dist /usr/local/apache/conf |
40. Zend Optimizer 설치 과거에는 php.ini 파일을 수정했으나 현재는 압축을 푼후 설치 스크립트를 이용해 바로 설치가 가능하다. 압축 푼 디렉토리로 이동하여 ./install 하면된다.
설치후 아래와 같이 phpinfo() 함수로 확인해본다.
![]()
php가 제대로 설치됐다면 아래와 같이 나온다. 두번째 그림은 Zend Optimizer 설치시
![]()
![]()
41. http://www.pdflib.com/products/pdflib/download/index.html 에서 pdflib의 최신 바이너리 파일을 다운 받는다.
42. pdflib 설치
shell>tar -xvzf PDFlib-5.0.3-Linux.tar.gz shell>cd PDFlib-5.0.3-Linux shell>cd bind shell>cd php shell>cd php-4.2.1 // php 4.2.0 이하 버전 사용자는 php-4.1.0을 사용한다. shell>mkdir /usr/local/apache/php_module // php 동적 모듈이 들어갈 디렉토리 생성 shell>cp libpdf_php.so /usr/local/apache/php_module
|
여기서부터가 중요하다. 필자의 경우 php_module 이라는 곳에 동적 모듈이 들어가게 세팅해놨는데, 이는 php.ini 파일 안에서 설정하면 된다.
shell>vi /usr/local/apache/conf/php.ini extension_dir="/usr/local/apache/php_module" // 자신이 원하는 디렉토리로 설정하면 된다. extension=libpdf_php.so // 복사했던 모듈을 추가 시키는 부분 |
이상의 설정이 잘못되면 pdf 라이브러리를 사용할 수 없게 된다. 확인은 압축푼 디렉토리의 bind/php 안의 hello.php등으로 하면 된다. 아니면 아래 소스를 복사하여 /usr/local/apache/htdocs/hello.php 를 생성한후 웹에서 확인해보기 바란다. 이때 Adobe Acrobat Reader 등 pdf 뷰어가 있어야 된다. 이상없이 pdf 파일이 화면에 출력되면 제대로 설치 된 것이다.
# $Id: hello.php,v 1.9.2.2 2003/12/17 15:38:01 tm Exp $
/* create a new PDFlib object */ $p = PDF_new();
/* open new PDF file; insert a file name to create the PDF on disk */ if (PDF_open_file($p, "") == 0) { die("Error: " . PDF_get_errmsg($p)); }
/* This line is required to avoid problems on Japanese systems */ PDF_set_parameter($p, "hypertextencoding", "winansi");
PDF_set_info($p, "Creator", "hello.php"); PDF_set_info($p, "Author", "Rainer Schaaf"); PDF_set_info($p, "Title", "Hello world (PHP)!");
PDF_begin_page($p, 595, 842); /* start a new page */
$font = PDF_load_font($p, "Helvetica-Bold", "winansi", "");
PDF_setfont($p, $font, 24.0); PDF_set_text_pos($p, 50, 700); PDF_show($p, "Hello world!"); PDF_continue_text($p, "(says PHP)"); PDF_end_page($p); /* close page */
PDF_close($p); /* close PDF document */
$buf = PDF_get_buffer($p); $len = strlen($buf);
header("Content-type: application/pdf"); header("Content-Length: $len"); header("Content-Disposition: inline; filename=hello.pdf"); print $buf;
PDF_delete($p); /* delete the PDFlib object */ ?> |
다음은 실행화면이다.
![]()
만일 이 부분이 제대로 되지 않는다면 필자의 과거 문서나 다른 문서를 참고하여 pdflib 소스를 가져와 컴파일 하도록 한다.
43. 모든것이 완벽히 설치 됐다면 부팅시 실행되게 설정한다.
shell>cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd shell>ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc0.d/K21httpd shell>ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S89httpd shell>ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S89httpd |
기타사항 : 위 다운로드 사이트들은 모두 제가 직접 확인해보고, 다운로드 가능한 사이트들로만 올렸습니다. | |
|
|
|
|
|
| 홍석명 |
2004-02-07 23:14:16 |
감사합니다. 덕분에 회사 서버를 돌릴수 있게 되었습니다. 감사합니다. 꾸벅~ |
| |
|
| | |
|
|
|
|
| 럭스 |
2004-02-08 12:13:29 |
| 넵.. 도움이 됐다니 다행이네요.. ^^ |
| | |
|
| | |
|
|
|
|
| 음 |
2004-03-04 11:07:32 |
| 아파치 설치 부분에서 그림이 빠졌어요... |
| |
|
| | |
|
|
|
|
| 럭스 |
2004-03-04 20:55:38 |
| 넵..죄송.. 이전 제로보드의 것을 일단 그대로 옮겨 오는바람에.. ^^ 그림 올리는 방식을 기획한다음에 해당 기능을 끼어 넣을 생각입니다. 좀 기간이 걸릴것 같습니다. 요새 좀 바빠서..^^ |
| | |
|
| | |
|
|
|
|
| 궁금이 |
2004-03-19 14:25:40 |
정리가 잘 되어 있네여. 대단 하십니다. ^^ 위에 설치하는 것들이 대략 무엇인지 설명 해 주시면 감사하겠습니다. 정말 궁금 합니다. (zlib,curl,mhash,libmcrpyt.....,libpng,freetype,jpeg,libungif,t1lib,ming,gd등등 이러한 것들이 어떠한 역할을 하는지 대략 설명 좀 해주세여) |
| |
|
| | |
|
|
|
|
| 초보 |
2004-03-22 19:13:19 |
저기. test.php 파일만들어서 php정보좀 볼려고했는데....그냥 내용이 보이네여.. php테스트어캐해요?..php가 안되는듯 ㅡ.ㅡ;;..아시는분 갈켜주세요. |
| |
|
| | |
|
|
|
|
| 다니엘 |
2004-03-30 00:03:56 |
/usr/local/apache/conf/httpd.conf 에 다음줄을 추가하세요 AddType application/x-httpd-php .html .htm .php .inc |
| |
|
| | |
|
|
|
|
| 이오공감 |
2004-04-02 08:58:12 |
잘보고 갑니다. 잘못된 곳이있어 지적해드리고 갑니다 질문이 많으곳이요 imap 설치부분요 cp c-client/c-client.a /usr/lib/c-client.a 을 cp c-client/c-client.a /usr/local/lib/libc-client.a 하니까 됩니다 설치 메뉴얼 보고 한겁니다 됩니다 다시 한번 감사 드립니다 |
| |
|
| | |
|
|
|
|
| 미래 |
2004-05-03 02:11:14 |
위에 버전이 없어서 curl-7.11.2 을 깔았는데 make test 에서 에러가 뜨네요.. php 컴파일에서도 에러뜨는데 어떻게 잡나요??
라이브러리를 찾을수 없다는데.. libc-client.a |
| |
|
| | |
|
|
|
|
| 꾸역꾸역 |
2004-05-04 17:15:53 |
ㅇ ㅓ휴.... 뒤늦게 리눅스 공부한답시고 메달려서 gd때문에 팔짝뛰겠습니다. 그나마 설명이 잘되있어서 따라하다 버전이 벌써 업된것들이 있어 나름대로 해볼라 치면 뭐가 그리도 걸려되는지.... 리눅스를 벌써 몇번 을 엎었네요 ㅡㅡ; 맥이 쭈악 빠집니다......흐흐 여튼 그래도 덕분에 따라할 구석이라도 생겨 위안을 삼습니다. 독학은 힘드러 ^^; 남들도 다 그렇게 했으려니 하고 넋두리 한마디 올리고 사라집니다.... 또 삽질하러..... ㅋㅋㅋ 이번엔 rpm -e --nodeps zlib에서 멈췄네요 ㅡㅡ; |
| |
|
| | |
|
|
|
|
| 이호선 |
2004-08-30 13:08:29 |
웁스... 감사합니다. imap설치.. 으~ 여기에 있는걸 보고 하니까 되네요^^;; lrh~~~ 질문하나 있는데요^^~ imap을 이렇게 설정하고 아웃룩에서 imap설정해서 받아오기 하면... 인증과정에서 잘못된인증이라고 하면서 끝나는데요... 어떻게 해야하는지 아시나요? 다들 모른다고 하네요T.T~ |
| | |
|
| | |
|
|
|
|
| 임민택 |
2004-10-16 16:12:52 |
39. php 설치 // 나중에 모듈 설치가 가능하므로 자신에게 필요한 부분만 설치 한다. 강좌이기 때문에 전체 설치함
./configure \ --with-apxs=/usr/local/apache/bin/apxs \ --with-config-file-path=/usr/local/apache/conf \ ............... 이라고 되어 있는데 만약 필요한거만 설치하고 다음에 또 다른게 필요해서 사용할려면 어떻게 해야 하나요... 다시 설치 해야 하는 건가요 아니면 설정하는 파일이 있어서 설정 해 줄수 있나요... |
| |
|
| | |
|
|
|
|
| 이기봉 |
2004-10-23 00:17:48 |
imap 설치시 copy시 에러가...경로나 파일명에 오타가 있는듯합니다. 결국 php configure시에도 imap 이 라이브러리 부족 에러 납니다... 윗분덕에 해결... 럭스님께도 무척 감사드립니다. 도움이 많이 됐습니다. 근데 소스를 푼건 (imap,curl, gd 등등...폴더는 모두 컴파일후 지워두 되나요 ? 보아하니 .configure->make->make install 시 알아서 다른곳에 설치 되는것 같던데...맞죠 ? ^^) |
| |
|
| | |
|
|
|
|
| 이기봉 |
2004-10-23 00:20:40 |
아... php 컴파일시 --with-mysql=/usr/local/mysqll \ 에 오타가 있네요 ^^; --with-mysql=/usr/local/mysql \ 로 변경해주세요.
[01][01][01] |
| |
|
| | |
|
|
|
|
| 이기봉 |
2004-10-23 05:37:20 |
웁스 --; imap 깔고나고 지금 알았는데 메일이 안되네요...--; imap을 따운그레이트 해보렵니다... 결과 보고 하겠습니다. --; |
| |
|
| | |
|
|
|
|
| 이승엽 |
2005-02-11 20:11:21 |
39번 세째줄 ./configure \ --with-apxs=/usr/local/apache/bin/apxs \ --with-config-file-path=/usr/local/apache/conf \ --with-mysql=/usr/local/mysqll \ => --with-mysql=/usr/local/mysql \ mysqll -> mysql l 이 두개입니다. ^^*
| | | | |

< 출처 : http://lux.soo.to >
|
0