일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 전자정부 표준프레임워크
- 윈도우
- 전자정부표준프레임워크
- Date and Time Function
- Data and Time Functions
- MySQL
- Date and Time Functions
- HTTP
- Oracle
- 오라클
- String Functions and Date Operators
- Sring Functions and Operators
- Tibero
- 티베로
- String Function and Operators
- String Functions and Operators
- SVN
- 방화벽
- Today
- Total
웹이야기
리눅스에서 apm 설치(apache + php + mysql) 본문
CentOS 에서 apm을 간단하게 설치해보고자 한다.
MySQL 8.x
Apache 2.4
PHP 7
MySQL에 약간의 문제가 있는 것 같아 MySQL 5.7 버전으로 동일하게 설치해도 정상적으로 잘 작동함.
1. MySQL 설치
- MySQL 설치는 아래 URL을 참조한다.
2. Apache 설치
#cd /usr/local/src
1) 파일 다운로드
1
2
3
|
#wget http://apache.mirror.cdnetworks.com/httpd/httpd-2.4.43.tar.gz
#wget http://apache.mirror.cdnetworks.com/apr/apr-1.6.5.tar.gz
#wget http://apache.mirror.cdnetworks.com/apr/apr-util-1.6.1.tar.gz
|
2) 압축을 풀어준다.
#tar xvzf httpd-2.4.43.tar.gz
#tar xvzf apr-1.6.5.tar.gz
#tar xvzf apr-util-1.6.1.tar.gz
3) 압축 푼 파일중에 apr과 apr-util을 httpd/src/lib 아래로 이동
#mv apr-1.6.5 ./httpd-2.4.43/srclib/apr
#mv apr-util-1.6.1 ./httpd-2.4.43/srclib/apr-util
4)apache configure
# cd httpd-2.4.43/
#./configure --prefix=/usr/local/apache --enable-so --enable-ssl=shared --with-ssl=/usr/local/ssl --enable-rewrite
5) make
#make
에러처리
xml/apr_xml.c:35:10: fatal error: expat.h: No such file or directory
와 같은 에러가 발생하면
#yum -y install expat-devel
을 해서 설치를 해준다.
설치후
#make clean
#make
make 가 잘 되면 다음을 해준다.
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_GetErrorCode'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_SetEntityDeclHandler'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_ParserCreate'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_SetCharacterDataHandler'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_ParserFree'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_SetUserData'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_StopParser'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_Parse'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_ErrorString'
/usr/local/src/httpd-2.4.43/srclib/apr-util/.libs/libaprutil-1.so: undefined reference to `XML_SetElementHandler'
와 같은 에러가 발생할때가 있어서 apr과 apr-util 을 최신것을 받았더니 해결이 되기도 하였다.
6)make install
#make install
7) apache 시작
#cd /usr/local/apache/bin
#./apachectl start
#ps -ef | grep httpd
아래와 같이 나오면 설치가 잘 된 것임
root 128708 1 0 22:46 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 128709 128708 3 22:46 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 128710 128708 3 22:46 ? 00:00:00 /usr/local/apache/bin/httpd -k start
daemon 128711 128708 3 22:46 ? 00:00:00 /usr/local/apache/bin/httpd -k start
root 128796 8236 0 22:47 pts/1 00:00:00 grep --color=auto httpd
8) 방화벽을 열어준다.
방화벽 오픈
#sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
방화벽 재시작
#sudo firewall-cmd --reload
9) 브라우저를 열어서 확인
http://1.1.1.1
아이피 주소를 입력해서 it Works 가 나오면 성공
3. PHP 설치
#cd /usr/local/src
1) PHP 다운로드
#wget https://www.php.net/downloads/distributions/php-7.4.7.tar.gz
wget 으로 다운로드 해서 압축을 풀면 다음과 같은 에러가 발생을 하였다.
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
그래서 그냥 웹에서 다운로드 받아서 FTP 를 이용해서 옮겼다.
#cd /usr/local/src
2) 압축을 풀어준다.
#tar xvzf php-7.4.7.tar.gz
3) php configure
#./configure --prefix=/usr/local/php --with-mysqli --with-openssl=/usr/local/ssl --with-pdo-mysql=mysqlnd --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/apache/conf --with-zlib --disable-debug --enable-calendar --enable-ftp --enable-sockets --enable-sysvsem
Package 'libxml-2.0', required by 'virtual:world', not found
라는 에러가 발생한다.
#yum -y install libxml2-devel
다시 configure 를 하니
Package 'sqlite3', required by 'virtual:world', not found
라는 에러가 발생한다.
#yum -y install sqlite
#yum -y install sqlite-devel
다시 configure 를 한다.
덤으로
#yum install libjpeg-devel
#yum install libpng-devel
이것도 해줬다.
4) make
#make
make 를 하고 나면
Build complete.
Don't forget to run 'make test'.
라고 나온다.
#make test
make test로 나온 말에는 신경쓰지 않고 넘어간다.
5)make install
#make install
6)php.ini 생성(복사)
#cp /usr/local/src/php-7.4.7/php.ini-development /usr/local/apache/conf/php.ini
7)php.ini 수정
#vi /usr/local/apache/conf/php.ini
파일을 열어 일단
mysqli.default_socket =/var/lib/mysql.sock
부분만 수정한다.
8)httpd.conf 수정
#vi /usr/local/apache/conf/httpd.conf
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
index.php 를 추가해준다.
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php .html .htm .inc
AddType application/x-httpd-php-source .phps
이 2줄을 추가해준다.
8)apache 재시작
#cd /usr/local/apache/bin
#./apachectl restart
9)info.php
#cd /usr/local/apache/htdocs/
#vi info.php
<?php
phpinfo();
?>
저장을 하고 나온다.
브라우저로 확인을 해본다.
대략 아래처럼 나오면 성공으로 보면 될 듯하다.
Done.
너무도 오랫만의 설치라 한번 정리를 해봤다.
'기타' 카테고리의 다른 글
HTTP 응답코드 (0) | 2020.08.19 |
---|---|
Java 다운로드(jdk1.8, jdk1.7, java 11 등) (0) | 2020.03.10 |
미러사이트 4개(Cent OS , apache등) (0) | 2020.03.07 |
Cent OS 다운로드 (0) | 2020.03.07 |
tortoiseSVN 다운로드 및 이용방법 (0) | 2020.03.02 |