Apache, php, Mysql 소스 설치

Feb 21, 2023
Apache, php, Mysql 소스 설치
 
 
1. 기존 컴퓨터 운영체제 환경에 Apache, php, Mysql 각각 설치하기 (Bitnami Nope!)

🚴 Apache 설치

 
 
  1. Apache 다운
 
  1. 압축 해제
notion image
 
  1. C:\APM\Apache24\conf 의 httpd.conf를 열어서 경로 수정
 
notion image

notion image
 
  1. 실행
C:\Apache24\bin의 ApacheMonitor.exe 실행 → localhost 접속
notion image

 
 
 
 

🚴‍♀️ PHP 설치

 
 
  1. php 다운
 
  1. 압축 해제
notion image
 
  1. C:\php8의 php.ini-development파일을 'php.ini'로 이름 수정
 
  1. php.ini 파일 수정
notion image
  1. C:\Apache24\conf 의 httpd.conf 수정
notion image

notion image
 
  1. 환경변수 설정
notion image
notion image
 
 
 

🚴‍♂️ MYSQL 설치

 
 
  1. Mysql 다운
 
  1. 압축 해제
 
  1. 환경변수 설정
notion image
notion image
2. Linux 기반 가상머신 구축 후, APM 소스 설치(패키지 설치 X)

🚴 Apache 설치

 
$ sudo su # cd /usr/local # mkdir apache
 
  1. 웹 서버로부터 소스 파일 다운
/usr/local# wget http://mirror.navercorp.com/apache//apr/apr-1.7.0.tar.gz /usr/local# wget http://mirror.navercorp.com/apache//apr/apr-util-1.6.1.tar.gz /usr/local# wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz /usr/local# wget https://archive.apache.org/dist/httpd/httpd-2.4.53.tar.gz
 
notion image
 
  1. 압축 해제
/usr/local# tar xvfz apr-1.7.0.tar.gz /usr/local# tar xvfz apr-util-1.6.1.tar.gz /usr/local# tar xvfz pcre-8.45.tar.gz /usr/local# tar xvfz httpd-2.4.53.tar.gz
 
3-1. apr 설치
/usr/local# cd apr-1.7.0 /usr/local# ./configure --prefix=/usr/local/apr /usr/local# make /usr/local# make install
notion image

⚠️ no acceptable C compiler found in $PATH 오류 발생

컴파일러를 찾기 못해서 오류가 발생했다.
$ sudo apt-get install g++
g++를 설치해주어 해결!
 
notion image
apr 설치 완료
 
3-2. apr-util 설치
/usr/local# cd apr-util-1.6.1 /usr/local/apr-util-1.6.1# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr /usr/local/apr-util-1.6.1# make /usr/local/apr-util-1.6.1# make install
 
notion image

⚠️ fatal error: expat.h: 그런 파일이나 디렉터리가 없습니다 오류 발생

 
apt-get install libexpat1-dev
libeexpat1를 설치해줘서 오류 해결
 
notion image
apr-util 설치 완료
 
3-3. pcre 설치
/usr/local# cd pcre-8.45 /usr/local/pcre-8.43# ./configure --prefix=/usr/local/pcre /usr/local/pcre-8.43# make /usr/local/pcre-8.43# make install
 
notion image
오류없이 pcre 설치 완료~!
 
3-4. Apache 설치
/usr/local# cd httpd-2.4.51 /usr/local/httpd-2.4.51# ./configure --prefix=/usr/local/apache2.4 \ --enable-module=so --enable-rewrite --enable-so \ --with-apr=/usr/local/apr \ --with-apr-util=/usr/local/apr-util \ --with-pcre=/usr/local/pcre/bin/pcre-config \ --enable-mods-shared=all /usr/local/httpd-2.4.51# make /usr/local/httpd-2.4.51# make install
make 실행 중

⚠️ collect2: error : Id returned 1 exit status 오류 발생

/usr/local/apr-util부분에서 error가 났을 것으로 예상되어,
해당 디렉터리를 삭제하고 소스 파일의 압축을 다시 해제한 후 진행했더니 해결되었다.
 
  1. apache 실행
/usr/local# sudo apache2.4/bin/httpd -k start /usr/local# ps -ef | grep httpd | grep -v grep /usr/local# sudo netstat -anp | grep httpd /usr/local# sudo curl http://127.0.0.1
 
notion image
마지막 명령 실행 완료 후 위와 같이 떴고
Firefox에서 127.0.0.1 주소로 접속하여 구동 확인해보았다.
 
notion image

!! APACHE 설치 완료 !! 😆

 
 
 

🚴‍♂️ MYSQL 설치

 
  1. 필수 패키지 설치
/usr/local# apt-get update /usr/local# apt-get install cmake /usr/local# apt-get install libssl-dev /usr/local# apt-get install libboost-all-dev /usr/local# apt-get install libncurses5-dev libncursesw5-dev
 
  1. 소스 파일 다운 & 압축 해제
/usr/local# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19.tar.gz /usr/local# tar xvfz mysql-8.0.19.tar.gz
 
  1. boost_1_70_0 압축 파일 다운 & 압축 해제
/usr/local/src# wget https://boostorg.jfrog.io/artifactory/main/release/1.70.0/source/boost_1_70_0.tar.gz /usr/local/src# tar xvfz boost_1_70_0.tar.gz
 
  1. cmake
/usr/local/mysql-8.0.19/dir_mysql# cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=/usr/local/mysql/data \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DMYSQL_TCP_PORT=3306 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DSYSCONFDIR=/etc \ -DWITH_EXTRA_CHARSETS=all \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DDOWNLOAD_BOOST=1 \ -DWITH_BOOST=/usr/local/src/boost_1_70_0
cmake 성공!
 
  1. make && make install
notion image
make && make install 장장 3시간 정도에 걸쳐 완료
 
  1. MySQL 설정
6-1. mysql 그룹 및 유저 생성
/usr/local/mysql-8.0.19/dir_mysql# groupadd mysql /usr/local/mysql-8.0.19/dir_mysql# useradd -r -g mysql -s /bin/false mysql
 
6-2. 디렉토리 생성
/usr/local# cd mysql /usr/local/mysql# mkdir mysql_files
 
6-3. 권한 주기
/usr/local/mysql# chown -R mysql:mysql /usr/local/mysql /usr/local/mysql# chown mysql:mysql mysql_files /usr/local/mysql# chmod 750 mysql_files
 
6-4. 기본 DB 생성
/usr/local/mysql# bin/mysqld --initialize --user=mysql \ --basedir=/usr/local/mysql \ --datadir=/usr/local/mysql/data
notion image
생성 완료, 주어진 임시 비밀번호를 기억해두고 후에 비밀번호를 변경해주었다.
 
6-5. 서버 실행
/usr/local/mysql# bin/mysqld_safe —user=mysql &
 
6-6. 명령어 입력
bin/mysql -u root -p
 
notion image

!! MySQL 설치 완료 !! 😆

 
 

🚴‍♀️ PHP 설치

 
  1. 필수 패키지 설치
/usr/local# apt-get install libxml2-dev /usr/local# apt-get install libjpeg-dev /usr/local# apt-get install libpng-dev /usr/local# apt-get install libsqlite3-dev
 
  1. 소스 파일 다운 & 압축 해제
/usr/local# wget https://www.php.net/distributions/php-8.1.0.tar.gz /usr/local# tar xvfz php-8.1.0.tar.gz
 
  1. PHP 설치
/usr/local# cd php-8.1.0 /usr/local/php-8.1.0# ./configure \ --with-apxs2=/usr/local/apache2.4/bin/apxs \ --enable-mysqlnd \ --with-mysql-sock=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-imap-ssl \ --with-iconv \ --enable-gd \ --with-jpeg \ --with-libxml \ --with-openssl /usr/local/php-8.1.0# make /usr/local/php-8.1.0# make install
notion image
configure 성공
 
  1. make && make install
notion image
이번 make도 시간이 꽤 걸렸다, 무사히 완료~!
 
notion image
제대로 깔렸는지 확인 (libphp.so)
 
  1. apache와 php 연동
/usr/local# vi /usr/local/apache2.4/conf/httpd.conf
httpd.conf 를 열어
🔑
AddType application/x-httpd-php .php .html
위 코드를 추가하고 저장해준다.
 
notion image
 
 
  1. php.ini 세팅
/usr/local# cd /usr/local/php-8.1.0 /usr/local# cd php.ini-production /usr/local/lib/php.ini
※ php.ini는 php의 설정 파일
 
  1. 테스트를 위한 php 파일 작성
/usr/local# vi /usr/local/apache2.4/htdocs/phpinfo.php <? php phpinfo(); ?>
phpinfo.php에 들어가 위 코드를 작성하고 저장해준다.
 
  1. apache 실행
/usr/local# sudo /usr/local/apache2.4/bin/httpd -k start /usr/local# ps -ef|grep httpd|grep -v grep /usr/local# sudo netstat -anp|grep httpd /usr/local# sudo curl http://127.0.0.1
 
notion image

⚠️ AH0558: httpd: Could not reliably .. 오류 발생

 
notion image
httpd.conf 파일을 열어 ServerName을 수정해주니 해결 완료
 
Firefox에서 127.0.0.1/phpinfo.php로 접속해보았다.
 
notion image

!! PHP 설치 완료 !! 😆

 
Share article

neeke