$ apt-get install libxml2-dev
$ apt-get install libjpeg-dev
$ apt-get install libpng-dev
와같은 오류를 방지하기 위해
$ sudo apt-get install libsqlite3-dev
도 같이 설치해준다.
먼저 https://www.php.net/링크로 들어가 최신버전을 확인 해야된다.
/usr/local# tar xvfz php-8.1.9.tar.gz
$ ./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
$ make
$ make test
$ make install

설치를 성공했다
/usr/local/apache2.4/conf# vi httpd.conf
혹시 모르니 LoadModule에 pnp module 이 잘 설치 되어있는지 확인한뒤 내려가
AddType 부분에
AddType application/x-httpd-php .php .html```
을 입력한다.
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은 프로덕션 시스템용 버전으로 개발용 같은 경우 더 많은 오류와 경고를 표시해주지만 보안상 문제가 생길 수 있으므로 개발 환경에서만 사용해야한다.
$ vi phpinfo.php
vi에디터로 열은 .php파일에
<? php
phpinfo();
?>
입력한다.
sudo /usr/local/apache2.4/bin/httpd -k start
으로 실행시킨뒤 브라우저에127.0.0.1/phpinfo.php또는localhost/phpinfo.php를 입력해
페이지를 확인한다.