본문 바로가기

Ubuntu

[Ubuntu] Ubuntu-20.04에 APM 소스 설치(수동 설치)하기 - 3 (PHP)

apache 설치 : https://yeni-days.tistory.com/2

mysql 설치 : https://yeni-days.tistory.com/7

필수 패키지 설치

먼저 필요한 패키지들을 설치한다.

& sudo su

/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

 

소스설치 파일 다운로드 및 압축해제

/usr/local# wget https://www.php.net/distributions/php-8.1.0.tar.gz

/usr/local# tar tar xvfz php-8.1.0.tar.gz

 

PHP 설치 (php-8.1.0)

/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 test

/usr/local/php-8.1.0# make install

 

configure를 완료하면 이렇게 뜬당
make test를 잊지 말라고 한다!!

 

Apache, PHP 연동

1. 모듈 설치확인

아파치 설정 파일인 httpd.conf 파일을 열어 PHP 모듈이 설치됐는지 확인한다.

/usr/local# cd apache2.4/conf

/usr/local/apache2.4/conf# getit httpd.conf

 165 줄에 잘 설치되어 있다 !!

잘 설치되어 있다면 mine_module에 사진과 같이 작성한다.

getit 명령어를 사용해서 작성했을 때 빠진 부분이 있어 추가로 작성해줬다.

터미널에서 vi 명령어를 사용하여 파일을 열었다.

이렇게 작성하면 된다.

2. php.ini 파일 세팅

  • production 시스템용 설정 파일인 php.ini-production 파일을 /usr/local/lib/php.ini에 복사한다.
  • php configure 시에 옵션으로 php.ini의 위치를 지정하지 않으면 기본으로 /usr/local/lib/php.ini를 사용한다.
  • php.ini은 PHP설정 파일인데 php-8.1.0 디렉토리로 가면 php.ini-development와 php.ini-production 두개의 파일이 있다. development는 개발용, production은 프로덕션 시스템용 버전으로 개발용 같은 경우 더 많은 오류와 경고를 표시해주지만 보안상 문제가 생길 수 있으므로 개발 환경에서만 사용해야한다.

/usr/local# cd php-8.1.0

/usr/local/php-8.1.0# cp php.ini-production /usr/local/lib/php.ini

3. 테스트용 php 파일 작성

아파치의 웹 콘텐츠(html, php 파일 등)는 htdocs 디렉토리에 위치한다. 

/usr/local# cd apache2.4/htdocs

/usr/local/apache2.4/htdocs# vi phpinfo.php

<?php phpinfo(); ?>

4. 연결 확인

먼저 아파치를 재실행 시킨 후 http://127.0.1.1/phpinfo.php로 접속하여 설치 정보가 출력되면 성공!

 

/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

성공 !!

만약

Apache httpd 에러가 발생했다면

(AH00558: httpd: Could not reliably determine the server's fully....message

에러 발생

보통 해당 에러는 아파치 서버를 시작할 때 자주 발생한다.

httpd.con 파일에서 ServerName을 설정해주면 간단히 해결된다.

 

/usr/local# cd apache2.4/conf

/usr/local/apache2.4.conf# vi httpd.conf

 

/ServerName # ServerName 단어 검색 후 주석을 풀고 내용을 수정한다.

 

:wq

systemctl start httpd

주석 해제
수정 완료

참고 블로그: https://nirsa.tistory.com/197

끝 !!!

참고