AMP라고 해서 Apache, MySQL(MariaDB), PHP을 사용해서 처리할 수 있다.


 PHP는 Apache가 요청을 받은 것을 PHP에게 보내서 처리를 하고 PHP는 DB랑 연결되서 처리해준다.


 즉, 모든 요청을 Apache가 처리해주는게 아니다.(그리고 이렇기 때문에 속도가 조금 느린 부분이 있는 걸로 알고 있다.)


 PHP는 다음에 들어가면, 구할 수 있다.

 사이트 : https://secure.php.net/downloads.php


 



 PHP을 설치한 후에 확인 한다면,


 ./configure --prefix=/usr/local/php \

--disable-debug \

--enable-mailparse \

--enable-calender \

--enable-sysvsem=yes \

--enable-sysvshm=yes \

--enable-ftp \

--enable-mgic-quotes \

--enable-gd-native-ttf \

--enable-url-includes \

--enable-trans-id \

--enable-inline-optimization \

--enable-bcmath \

--enable-exif \

--enable-sigchild \

--enable-mbstring \

--enable-safe-mode \

--enable-sockets \

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

--with-mysql=/usr/local/mariadb5.5/ \

--with-config-file-path=/usr/local/apache/conf \

--with-mod-charset \

--with-charset=utf8 \

--with-xml \

--with-language=korean \

--with-jpeg \

--with-png \

--with-zlib \

--with-jpeg-dir=/usr \

--with-png-dir=/usr/lib \

--with-freetype-dir=/usr \

--with-libxml-dir=/usr \

--with-gd \

--with-ttf \

--with-gettext \

--with-openssl;


다음과 같은 오류가 날 수가 있다.


 perl등이 Apache에 제대로 설치할때, 안되어 있기 때문이다.

 이 경우에는 Apache을 새로 깔아 주는게 좋다.


 이렇게 한 후에 다시 돌린다.


 다음과 같은 오류가 뜨는데, 이 경우에는 freetype과 freetype-devel을 설치한다.


 초기화가 완료되었다.

 현재 방식을 하는데, 경고가 받아진다.

 경고는 후에 문제를 일으키니, 나중에 찾아서 해결 방법을 기록해야겠다.


 make && make install;


 이렇게 해서 PHP가 설치가 완료된다.


 PHP와 Apache을 연결시키기 위해서 작업하는게 따로 있다.


 먼저 PHP을 설치할때, Apache 경로를 설정했다.

 그 이유는 Apache와 PHP와 연동하기 위해서 설정한 것이다.


 PHP5를 제대로 동작 시키기 위해선, 다음 같은 모듈이 추가 되어야 된다.


 LoadModule php5_module modules/libphp5.so


 libphp5.so는 php5을 실행 시키는 명령(함수)들이 저장되어있는 동적 라이브러리이다.

 Apache가 요청을 받아들인 후에 PHP에게 보낼때, 이걸 이용해서 처리한다라고 봐도 된다.


 만약, 확장자에서 php가 들어간다면, PHP을 실행 시키기 위해서 Type을 추가시켜줘야한다.


 <ifModule></ifModule> 사이에 다음과 같은 문구를 추가한다.


 AddType application/x-httpd-php .php

 AddType application/x-httpd-php-source .phps


 여기서, php가 아닌 html에서도 php문구를 처리하기 위해선


 AddType application/x-httpd-php .php .html .htm


 이렇게 사용하면, 작동이 문제 없이 된다.


 여기서 /usr/local/apache/htdocs 라는 곳에서 index.html 이라는 파일이 있다.

 이 파일은 Apache가 처음에 설치된 후에 이상 없이 작동되는지 확인하기 위한 파일이다.

 이 파일에 다음과 같은 문구를 추가한다.


 <?php

phpinfo();

 ?>


 이렇게 해서 phpinfo라는 함수가 실행되고, php의 정보를 볼 수 있게 한다.


 



 php에서 설치가 제대로 되었는지, 설정이 어떻게 되어있는지를 확인 할 수 있기 때문에 보고 이상 없는지 확인하면 된다.


 파일 : 

apr-1.5.0.tar.gz

apr-util-1.5.3.tar.gz

httpd-2.4.6.tar.gz

pcre-8.33.tar.gz

mariadb-5.5.34.z01

mariadb-5.5.34.z02

mariadb-5.5.34.z03

mariadb-5.5.34.z04

mariadb-5.5.34.z05

mariadb-5.5.34.zip

php-5.4.22.z01

php-5.4.22.z02

php-5.4.22.zip



 SHA-256 표시줄.

 SHA256

 Name

 8505C2AA9F99E6B43D8E5C72CC6F4D8C5A8B3F67DB29C82D9707B98CBC3F3A89 apr-1.5.0.tar.gz
 259CE68F68C531F7ADECF79248F91235271F4025C1A47AE7E51BEE0E07E9902B apr-util-1.5.3.tar.gz
 8365BA360DF345B5AFA36FCA48B4036CE965141E029A6099F464DDF8A94FF0A7  httpd-2.4.6.tar.gz

 36CB3AE0078270F05972E9B8FBB7C859C05FD36DEB2152C77C8C8F4B07D5B28E

 mariadb-5.5.34.z01
 E2DC09A4664E6CEDB5C60F120814C794BB32D6C6583D2F6F9DCACC0DFEFE4FAA mariadb-5.5.34.z02
 31AF790E499982B8186865ED5D8A05E76DCC839899CA265CDA9A8A6343038D5D mariadb-5.5.34.z03
 95567B60520A85F342144A0D8168E57014E4992765FE32F1795BA14626C39A3A mariadb-5.5.34.z04
 9323B5AF8DEC149BE79D8E6764B3D11BD6B211A3956ED1BAC5516DBE3DAB4BC7 mariadb-5.5.34.z05
 C35FE01A7F5F265820E9DD6E800E014F3887E8E7757BCAF1820C909D6865C6D5 mariadb-5.5.34.zip
 C6936ADCDD8730B0C56681775C078B057541EE12BB7953BF912F041F54457B9E pcre-8.33.tar.gz
 E3CA8DBAC09F9CD985D93CA6439F8E5272A4AC8B1880A710C3C57170114FC7AA php-5.4.22.z01
 85AB309E69A00DA00D1A3B668A77F00E70FB2EE06EBD39454CEDD1F94822F5A2 php-5.4.22.z02
 3435510B9B3B8B6EDE933017114613C97B7506F5301BA2F1B4106DBAE9F403FD php-5.4.22.zip


 다운로드 한 후에 7z h 을 이용해서 확인할 수 있다.

Posted by JunkMam
,

https을 사용하기 위해선 OpenSSL을 설치하는게 좋다.(SSH가 설치 되어 있다면, 자동으로 OpenSSL이 설치가 되어 있을 것이다.)


 OpenSSL을 연결하기 위해서 OpenSSL을 설치를 해줘야한다.


 OpenSSL-devel이 안 깔려 있기 때문에, 설치하는 도중에 계속 오류가 나게 되므로, 


 yum install openssl과 openssl-devel을 설치해준다.


 openssl-devel이 설치되면서 생기는 차이점은 openssl에 관련된 개발용 헤더들과 파일들이 같이 깔려 있다는 점이다.(만약, openssl이 설치가 안되어 있다면[그럴일 없지만...]  https://www.openssl.org/source/ 에 들어가서 다운 받아서 설치하는게 좋다.)


 yum install libpng* libjpeg* perl* 


 먼저 http는 demon인 httpd을 설치해줘야지 제대로 작동이 된다.


 httpd의 소스는


 https://archive.apache.org/dist/ 에서 구할 수 있다.


 나는 httpd-2.4.6버전을 설치할려고 한다.


 먼저 httpd-2.4.6을 얻는 작업을 한다.

 필자는 wget을 설치해 두었기 때문에 wget을 사용한다.

 wget이 설치가 되어 있지 않다면, 설치하거나 웹페이지에 가서 다운 받으면 된다.

 사이트 : https://archive.apache.org/dist/httpd/



 다운 받은 후에 apache와 openssl을 연동을 하기 위해서 apr 소스를 다운 받는다.

 필자는 apr-1.5.0과 apr-util-1.5.3을 사용한다.


 사이트 : https://archive.apache.org/dist/apr/


 이걸 이용해서, httpd와 apr, apr-util을 풀어준다.


 이렇게 tar zxvf을 이용해서 압축을 풀어주면, 처리가 가능해진다.


 이렇게 하면, httpd와 apr, apr-util이라는 것들이 생성이 된다.

 여기서 httpd을 컴파일 하기 위해서 apr과 apr-util을 옮겨줘야 한다.


 apr-1.5.0 -> httpd-2.4.6/srclib/apr

 apr-util-1.5.3 -> httpd-2.4.6/scrlib/apr-util


 이렇게 변형을 해줘야지 httpd을 컴파일 할때, 같이 사용하게 된다.


 먼저 make을 사용하기 위해서 설정을 사용한다.


 httpd-2.4.6에 들어간 다음에


 ./configure --prefix=/usr/local/apache \

--enable-mods-shared=all \

--enable-ssl \

--enable-so \

--enable-rewrite \

--with-include-apr \

--with-include-apr-util;


 --prefix : Linux에서 설치할 경로를 사용자가 정의하는 것이다.

 --enable-mods-shared : mod 설치하는 것을 동적 라이브러리로 설정하는 것이다.

 --enable-ssl : ssl 라이브러리를 지원하는 것이다.

 --enable-so : 동적 라이브러리로 지원하는 것이다.

 --enable-rewrite : 덮어 씌우기를 지원해주는 것이다.

 --with-include-apr : apr을 포함해서 컴파일하는 것.

 --with-include-apr-util : apr-util을 포함한 컴파일 하는것.


 이렇게해서 설정을 하게 된다.


 설정이 완료된 후에 컴파일을 한다면, 오류가 발생한다.


 


 pcre가 없어서 발생하는오류로. pcre을 설치해줘야 한다.


 yum으로 해도 되지만, 소스 설치를 사용한다.


 다음과 같은 주소에서 가면 , 얻을 수 있다.


 https://sourceforge.net/projects/pcre/files/


 pcre-8.33.tar.gz 을 받아서 사용한다.


 tar zxvf pcre-8.33.tar.gz을 사용해서 압축을 풀어낸 후에 pcre에 들어간다.


 pcre을 설치하기 위해서 컴파일을 하기위해서 초기 설정을 한다.


 ./configure



 이렇게 하면, 초기화가 완료되고 컴파일을 하기 위해서 make로 테스트 한 후에 make install을 해서 컴파일 설치를 완료시킨다.


 설치 완료한 다음에 다시 httpd에서 초기화를 설정하면, 다음과 같이 나오게 된다.



 이것은 OpenSSL-devel가 설치가 안되어 있어서 생기는 문제점이다.(초기화 할때, SSL관련된 경로 및 설정이 잘못 되었을 수도 있다.)


 OpenSSL-devel이 제대로 설치가 되었으면, 문제 없이. 초기화가 된다.


 초기화가 완료되었으면, make & make install 을 이용한다.


 그러면, Apache 설치가 완료가 된다.


 이제 Apache의 설정을 해서 확인 한다.


 여기서는 Apache의 설정을 하는게 있다.

 /usr/local/apache/conf 에서 설정이 들어가 있다.

 httpd.conf라는것에서 초기 설정을 할 수 있다.


 /usr/local/bin/apachectl을 사용하면, 아파치 서버가 작동을 한다.


 멈추게 하고 싶다면,

 /usr/local/bin/apachectl stop 을 사용하면 된다.


 일단, 해당 서버에는 XWindow가 설치가 되어 있지 않기 때문에 우리가 일반 적으로 알고 있는 It's Work 라는 문장이 있는 페이지로 이동하기가 힘들다.


 그래서 lynx(Text Internet Browser 중 하나)을 이용해서 출력하면, 다음과 같이 뜨면서 이상없이 뜨는걸 볼 수 있다.


 localhost로 들어가면, 자기 IP(127.0.0.1)에 들어가며, 제대로 동작하는지 확인을 할 수 있다.



Posted by JunkMam
,