아파치 설치, VirtualHost로 서버 하나에 다수의 도메인 연결, Let's Encrypt 인증서 수동 발급&연결에 이어...

PHP 설치를 진행했습니다(다음 글에서는 MariaDB를 설치 과정을 정리할 거예요. MySQL 새 버전이 마음에 안 들어서.).


https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-ubuntu-18-04

https://www.manualfactory.net/10460

https://blog.lael.be/post/73


위 문서들을 참고했고, 이번에도 라엘 님의 글이 중심이 되었습니다.



1. 운영체제 구성요소(패키지)를 최신 상태로 업그레이드


터미널 창을 열어서

sudo apt-get update

sudo apt-get upgrade

등의 명령어를 입력하여 패키지를 최신 것으로 유지합니다.

(경우에 따라서는 sudo apt-get dist-upgrade 도 동원.)



2. PHP 7.2 설치


▲ sudo apt-get install php

라고 입력하여 php 7.2 를 설치합니다.


참고로 libapache2-mod-php7.2 패키지는 PHP-Apache 연동 모듈입니다.

(아파치 사용자라면 반드시 필요! 만약 의존성 패키지로 설치되지 않는다면 나중에 수동으로라도 설치해줘야 합니다. 만약 php 버전이 7.0이라면 libapache2-mod-php7.0 이겠죠?)



3. PHP 추가 모듈 설치


▼ 아래 스샷처럼 명령어를 넣어서 “라엘”님의 추천 모듈들을 설치합니다.

( sudo apt-get install php-mbstring php-gd php-curl php-xml php-mysql )


※ 참고

php-mbstring : 다국어 처리 모듈

php-gd : 이미지 처리 모듈

php-curl php-xml : 뭔지 잘 모르겠음. php-curl은 워드프레스 플러그인들이 쓰는 듯합니다. 없으면 문제 생기는 경우가 있음.

php-mysql : PHP-MySQL 연동 모듈. MariaDB에서도 작동함. 반드시 필요.

( php-mcrypt 모듈은 보안상의 이유로 PHP 7.2에서 삭제되었다고 합니다. )


이외에 추가로 설치하고 싶은 모듈이 있다면 터미널 창에서

apt search php- | less

이라고 입력해서 패키지 목록을 검색 후 설치하면 됩니다.

(목록이 한 화면 단위로 끊어져서 보일텐데 상/하 화살표, PgUP/PgDN, Home/End 키 등을 적절히 활용하여 넘겨 보다가 Q를 누르면 빠져나올 수 있습니다.)



▲ sudo service apache2 restart

설치한 PHP를 아파치에서 인식하도록 아파치 서비스를 재시작해 줍니다.




4. 작동 테스트


웹문서 저장공간(예 : 아파치 기본값은 /var/www/html/ 입니다)에 아래 스크린샷의 코드를 phpinfo.php 라는 파일이름으로 저장합니다.



웹브라우저 주소창에 http://localhost/phpinfo.php 라고 입력해 봅니다.

(멀티 도메인 연결때문에 localhost로 접속이 불가능하다면 "도메인주소/phpinfo.php" 형태로 입력합니다.)


▲ 이런 화면이 나오면 테스트 성공입니다.



5. (옵션) 설정값 변경


위의 스샷에는 php 설정파일(php.ini)의 경로가 나옵니다. 저는 /etc/php/7.2/apache2/php.ini 인데요,


터미널 창에서

sudo gedit /etc/php/7.2/apache2/php.ini

처럼 입력하여 php 설정파일을 띄운 다음 수정을 원하는 값을 적당히 추가/변경해 줍니다.


date.timezone = Asia/Seoul

memory_limit = 128M   (기본값 : 128M)

post_max_size = 20M    (기본값 : 8M)

upload_max_filesize = 10M   (기본값 : 2M)

max_execution_time = 60   (기본값 : 30)

max_input_time = 120   (기본값 : 60)


▲ 저는 이정도만 바꿔줬는데,

(사실 기본값으로도 워드프레스 돌아갑니다. 2MB 이상 파일만 업로드 안 하면. => upload_max_filesize = 2M)

https://blog.lael.be/post/73

https://varins.com/home-server-09-php-mariadb-wordpress

http://php.net/manual/en/mbstring.configuration.php#ini.mbstring.internal-encoding

https://www.thewordcracker.com/intermediate/how-to-increase-maximum-file-upload-size/

http://webdir.tistory.com/221

위의 문서들을 참조했고, deprecated 된 부분들은 제외시켰습니다.

워드프레스 돌리는 데에는 문제가 없을 거고, phpmyadmin으로 DB파일 올려서 복구할 때는 업로드 용량 조절을 하셔야 할 듯합니다.


설정 끝냈으면 저장하고 나온 다음 터미널 창에서

sudo service apache2 restart

라고 입력하여 php.ini 설정을 다시 불러들여 주세요.



6. (옵션) PHP PPA 추가 : 비권장.


PHP는 버전업 시 Deprecated 되는 코드들이 있으면

업데이트 했을 때 해당 코드가 들어간 사이트들이 먹통이 되는 경우가 있기 때문에

CMS나 사이트들이 대응하는 것을 봐가면서 천천히 업데이트하는 것이 좋다고 생각합니다.

그래서 PPA를 추가하는 것은 비추천하는데, 그래도 적어놓으면 쓸 데가 있겠지 싶어서 추가해 둡니다.


터미널 창(Ctrl+Alt+T)에서 아래의 명령어를 입력합니다.

add-apt-repository ppa:ondrej/php


PPA 추가 후에는 sudo apt-get update && sudo apt-get upgrade 입력해서 업데이트 시도해 주시고요.

(출처 : https://launchpad.net/~ondrej/+archive/ubuntu/php )


PPA 제거 방법은 아파치 설치과정 정리 글에 써놨었으니, 이 글에서 다시 적지는 않겠습니다.

(링크된 글에서 Ctrl+F 누르고 "제거"라고 입력하면 쉽게 찾아집니다.)


----------------------------------------------------


[윈도우10 64bit] APM PHP 7.0 설치과정 정리

[우분투 18.04 데스크톱] LEMP : PHP 7.2 설치 과정 정리


반응형