서버 운영/APM 서버 구축

PHP7 설치

씨실과 날실 2018. 11. 19. 10:00

[관련 게시물]

Ubuntu 20.04 LTS에서 APM 설치

2020/09/14 - [서버 운영/APM 서버 구축] - 우분투(Ubuntu) 20.04에서 APM 설치 - 아파치(Apache2 설치

2020/09/16 - [서버 운영/APM 서버 구축] - 우분투(Ubuntu) 20.04에서 APM 설치 - 마리아DB(MariaDB) 10.3 설치

2020/09/18 - [서버 운영/APM 서버 구축] - 우분투(Ubuntu) 20.04에서 APM 설치 - 마리아DB(MariaDB) 10.5 설치

2020/09/20 - [서버 운영/APM 서버 구축] - 우분투(Ubuntu) 20.04에서 APM 설치 - PHP 7.4 설치

2020/09/22 - [서버 운영/APM 서버 구축] - 우분투(Ubuntu) 20.04에서 APM 설치 - APM 설치 후 방화벽 설정

2020/09/24 - [서버 운영/APM 서버 구축] - MariaDB 10.4 이후의 계정 인증 관련 변화(unix_socket, mysql_native_password 인증 / 계정, 암호 및 전역 권한 정보 저장 테이블 변경 등)

2020/09/26 - [서버 운영/APM 서버 구축] - 우분투 20.04 APM 서버 기본 환경 파일 설정 - apache2.conf 기본 설정

2020/09/28 - [서버 운영/APM 서버 구축] - 우분투 20.04 APM 서버 기본 환경 파일 설정 - php.ini 기본 설정


Ubuntu 18.04 LTS에서 APM 설치

2018/11/09 - [서버 운영/APM 서버 구축] - Apache 서버 설치

2018/11/14 - [서버 운영/APM 서버 구축] - MariaDB 설치

2018/11/16 - [서버 운영/APM 서버 구축] - MariaDB 업그레이드 1

2018/11/16 - [서버 운영/APM 서버 구축] - MariaDB 업그레이드 2 - ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded

2018/11/16 - [서버 운영/APM 서버 구축] - MariaDB 업그레이드 3

2018/11/19 - [서버 운영/APM 서버 구축] - PHP7 설치

2018/11/21 - [서버 운영/APM 서버 구축] - 서버 환경 파일 수정 - php.ini, apache2.conf


Ubuntu 18.04 LTS에서 MariaDB 백업 및 업그레이드

2019/01/15 - [서버 운영/APM 서버 구축] - MariaDB & MySQL 백업과 복원 - Nextcloud 14

2019/06/27 - [서버 운영/APM 서버 구축] - MariaDB 업그레이드 (Upgrading from MariaDB 10.3 to MariaDB 10.4)


Ubuntu 18.04 LTS에서 PHP 버전 전환

2019/07/05 - [서버 운영/APM 서버 구축] - Apache와 Shell에서 PHP 버전 전환하기(How to Switch between Multiple PHP Version)


Ubuntu 18.04 LTS에서 phpmyadmin 설치 및 운용

2018/11/23 - [서버 운영/APM 서버 구축] - phpmyadmin 설치 - APT 패키지 관리자를 통한 설치

2019/06/18 - [서버 운영/APM 서버 구축] - APT 패키지 관리자를 통해 설치한 phpMyAdmin 업그레이드 방법(업그레이드 버전 4.9.0.1)

2019/07/01 - [서버 운영/APM 서버 구축] - phpMyAdmin 수동 설치 01 - 일반 설치

2019/07/03 - [서버 운영/APM 서버 구축] - phpMyAdmin 수동 설치 02 - 심볼릭 링크를 이용한 보안 접속

2019/06/16 - [서버 운영/APM 서버 구축] - phpMyAdmin 4.6.6deb5와 PHP 7.2 간 호환성 문제 해결 - Warning in ./libraries/sql.lib.php#613


XAMPP 설치 및 운용

2019/04/20 - [서버 운영/서버 구축 꾸러미] - XAMPP에 대하여(버전 7.1.28 / 7.2.17 / 7.3.4)

2019/04/22 - [서버 운영/서버 구축 꾸러미] - XAMPP for Windows 7.3.4 인스톨러 설치

2019/04/25 - [서버 운영/서버 구축 꾸러미] - XAMPP for Windows 설정

2019/06/03 - [서버 운영/서버 구축 꾸러미] - XAMPP 포터블(portable) 사용법

2019/06/05 - [서버 운영/서버 구축 꾸러미] - XAMPP for Linux 4.3.5 설치 및 사용법


서버 운영을 위한 관련 연재글

2018/11/07 - [리눅스/Ubuntu] - 방화벽 설정 - ufw

2018/11/12 - [서버 운영/버추얼박스(VirtualBox)] - 가상머신(Virtualbox) 내 서버 외부접속

2019/01/05 - [미디어위키/미디어위키 설치 및 관리] - 호스트 컴퓨터에서 가상머신 내 미디어위키 접속 및 작업을 위한 버추얼박스 포트포워딩 설정

2019/03/15 - [서버 운영/APM 서버 구축] - PHP 7.3으로의 업그레이드 및 사용 연기 권장 안내 - PHP Notice: compact(): Undefined variable:


[관련 웹문서]

https://mariadb.com/kb/en/authentication-plugin-unix-socket/#unix_socket


안녕하세요. LAMP 중 지금까지 L과 A 그리고 M까지 설치하였습니다. 서버의 기본 구축 과정에서 마지막 P인 PHP의 설치만을 남겨두고 있습니다.

PHP는 동적 웹페이지를 만들기 위해 설계된 프로그래밍 언어입니다. 최신버전은 php7이고 현업에서는 php5와 php7이 같이 쓰이고 있습니다.

php의 공식 사이트는 http://php.net/입니다. 이곳에서 최신버전을 확인하고, 각 버전별 파일을 다운받고 사용법을 확인하실 수 있습니다.

사용법은 가능하시면 영문판을 확인하시는 것이 좋습니다. 혹여 영어가 부담스러우신 경우, 한글판 문서를 확인하실 수 있으나 굉장히 오래 전에 작성되고 업데이트가 이루어지지 않아 최신 버전의 내용이 반영되어있지 않음을 감안하셔야 합니다.

영문판 메뉴얼 : http://php.net/manual/en/

한글판 메뉴얼 : http://docs.php.net/manual/kr/


따라서 php를 심도높게 공부하시고자 하는 분은 php 관련 전문서적을 탐독하시는 것이  좋습니다.

php 설치는 손쉽게 이루어집니다.

study@study-VirtualBox:~$ sudo apt install php

위 명령은 php7 버전을 설치합니다.

study@study-VirtualBox:~$ sudo apt install php
[sudo] study의 암호: 
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다       
상태 정보를 읽는 중입니다... 완료
다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다:
  libconfig-inifiles-perl libjemalloc1
Use 'sudo apt autoremove' to remove them.
다음의 추가 패키지가 설치될 것입니다 :
  libapache2-mod-php7.2 php-common php7.2 php7.2-cli php7.2-common php7.2-json
  php7.2-opcache php7.2-readline
제안하는 패키지:
  php-pear
다음 새 패키지를 설치할 것입니다:
  libapache2-mod-php7.2 php php-common php7.2 php7.2-cli php7.2-common
  php7.2-json php7.2-opcache php7.2-readline
0개 업그레이드, 9개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.
3,852 k바이트 아카이브를 받아야 합니다.
이 작업 후 17.1 M바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까? [Y/n] 
위처럼 더 이상 필요하지 않은 패키지가 있다며 안내가 나오는 경우가 있다면 설치 후 sudo apt autoremove 명령을 실행하여 제거해주세요.

이제 설치된 php의 버전을 확인해봅니다.

study@study-VirtualBox:~$ php -v

그럼 다음과 같이 자세한 버전 정보가 나오게 됩니다.

study@study-VirtualBox:~$ php -v
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
study@study-VirtualBox:~$ 
이제 설치된 php의 환경변수값을 확인합니다. 이것을 보고 자신의 서버 환경에 맞추어 설정값을 바꾸어 주어야 합니다.

php 환경변수값을 확인하기 위해서는 파일을 하나 생성해야 합니다.

study@study-VirtualBox:~$ cd /var/www/html
study@study-VirtualBox:/var/www/html$ sudo vi phpinfo.php

그러면 터미널에 아래와 같이 vi 편집기가 실행됩니다.

vi가 실행된 직후는 다음과 같은 화면이 나옵니다.


vi 에디터를 실행한 직후는 명령 모드입니다. 문서에 내용을 적거나 편집하려면 자판에서 i를 눌러 입력모드로 변환해야합니다. 그런데 아쉬운 점은 i를 눌러 입력모드로 들어가도 이전의 명령 모드와 눈에 띄는 변화가 없어 내용을 입력해보아야만 모드 변환이 되었는지 확인할 수 있습니다.

어쨌든 i를 눌러 입력 모드로 들어온 후 다음과 같이 입력해줍니다.


<?php phpinfo(); ?>을 입력하고 자판에서 Esc키를 눌러 입력모드에서 명령모드로 환원합니다.

명령모드 상태에서 :(쌍점)을 눌러 vi의 EX 모드로 들어갑니다.


그럼 위 그림처럼 아래에 :(쌍점)과 함께 프롬프트가 나타납니다.

여기에서 아래 그림처럼 :wq를 입력하고 엔터를 칩니다.


그럼 리눅스의 일반적인 터미널 화면으로 돌아오게 됩니다.

이제 php 환경변수 정보를 확인해봅시다.

웹브라우저를 실행시켜 주소창에 http://localhost/phpinfo.php을 입력해 접속해봅니다.


그럼 위와 같은 화면이 나오게 됩니다. 만약 이 화면이 나오지 않는다면 무언가 잘못된 것이니 처음부터 다시 한번 확인해보시기 바랍니다.

이것으로 작업이 다 끝났느냐? 그것은 아닙니다. 서버 환경에 맞게 php 설정을 바꾸는 작업이 남았습니다. 이것은 다음 글에서 안내해드리도록 하겠습니다.