Ubuntu 14.04 및 14.10에 Apache 또는 Nginx 용 PHP 7을 설치하는 방법
안정된 버전의 PHP 7.0이 출시 된 지 몇 달 후, 이전 버전에서 업그레이드를 고려할 때가 적절할 수 있습니다.
특히 프로덕션 환경에서는 업그레이드에 대한주의가 항상 있지만, 속도 향상과 스칼라 유형 힌팅 등의 기능을 즐기기 위해 지금 업그레이드하는 것이 좋습니다.

시스템에 두 가지 버전의 PHP를 설치하고 테스트 목적으로 하나를 사용할 수 있지만 주어진 시간에 하나의 PHP Apache 모듈 만 활성화한다는 점을 기억하십시오.
이 가이드는 Apache 웹 서버와 연결된 mod_php 또는 Nginx 웹 서버와 연결된 PHP-FPM을 사용하여 PHP 5.X에서 업그레이드하는 데 중점을 둡니다.
- Install PHP 7 in Ubuntu 14.04 and 14.10
- Upgrading to PHP 7.0 under Apache Web Server
- Upgrading to PHP 7.0 under Nginx Web Server
이제 최신 버전의 PHP로 업그레이드하고이를 사용하도록 시스템을 구성하는 방법을 살펴 보겠습니다.
Ubuntu 14.04 및 14.10에 PHP 7을 설치하는 방법
먼저 아래 명령을 실행하여 Debian 및 Ubuntu와 같은 파생 제품에 대해 Ondřej Surý가 관리하는 PPA를 추가해야합니다.
$ sudo add-apt-repository ppa:ondrej/php
다음으로 시스템을 다음과 같이 업데이트하십시오.
$ sudo apt-get update
이제 모든 것이 설정되었으며 PHP 7.0을 설치할 수 있지만 Apache 및 Nginx에 대한 업그레이드는 다른 섹션에서 살펴 보겠습니다.
이 섹션은 Apache를 실행하는 시스템을위한 것입니다. 여기서 PHP 코드는 mod_php
모듈을 사용하여 실행됩니다. 아래 명령을 실행하여 최신 PHP 버전을 설치하십시오.
$ sudo apt-get install php7.0
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libapache2-mod-php7.0 libssl1.0.2 php-common php7.0-cli php7.0-common php7.0-json php7.0-opcache php7.0-readline Suggested packages: php-pear The following NEW packages will be installed: libapache2-mod-php7.0 libssl1.0.2 php-common php7.0 php7.0-cli php7.0-common php7.0-json php7.0-opcache php7.0-readline 0 upgraded, 9 newly installed, 0 to remove and 80 not upgraded. Need to get 4,371 kB of archives. After this operation, 17.2 MB of additional disk space will be used. Do you want to continue? [Y/n] y
이제 시스템에서 PHP가 업그레이드되었지만 MySQL 데이터베이스 관리 시스템을 사용하는 경우 다음 명령을 실행하여 PHP-MySQL 바인딩을 업데이트해야하며 Curl, GD와 같은 유용한 모듈을 설치해야합니다. ", Cli, JSON 등
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
추가 PHP7.0 모듈을 설치하려면 apt-cache 명령을 사용하여 모든 PHP7.0 모듈을 나열하고 설치할 수 있습니다.
$ sudo apt-cache search php7
php-radius - radius client library for PHP php-http - PECL HTTP module for PHP Extended HTTP Support php-uploadprogress - file upload progress tracking extension for PHP php-mongodb - MongoDB driver for PHP php7.0-common - documentation, examples and common module for PHP libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module) php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary) php7.0-cli - command-line interpreter for the PHP scripting language php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary) php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary) libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library) php7.0-dev - Files for PHP7.0 module development php7.0-curl - CURL module for PHP php7.0-enchant - Enchant module for PHP php7.0-gd - GD module for PHP php7.0-gmp - GMP module for PHP php7.0-imap - IMAP module for PHP php7.0-interbase - Interbase module for PHP php7.0-intl - Internationalisation module for PHP php7.0-ldap - LDAP module for PHP php7.0-mcrypt - libmcrypt module for PHP php7.0-readline - readline module for PHP php7.0-odbc - ODBC module for PHP php7.0-pgsql - PostgreSQL module for PHP php7.0-pspell - pspell module for PHP php7.0-recode - recode module for PHP php7.0-snmp - SNMP module for PHP php7.0-tidy - tidy module for PHP php7.0-xmlrpc - XMLRPC-EPI module for PHP php7.0-xsl - XSL module for PHP (dummy) php7.0 - server-side, HTML-embedded scripting language (metapackage) php7.0-json - JSON module for PHP php-all-dev - package depending on all supported PHP development packages php7.0-sybase - Sybase module for PHP php7.0-sqlite3 - SQLite3 module for PHP php7.0-mysql - MySQL module for PHP php7.0-opcache - Zend OpCache module for PHP php-apcu - APC User Cache for PHP php-xdebug - Xdebug Module for PHP php-imagick - Provides a wrapper to the ImageMagick library php-ssh2 - Bindings for the libssh2 library php-redis - PHP extension for interfacing with Redis php-memcached - memcached extension module for PHP, uses libmemcached php-apcu-bc - APCu Backwards Compatibility Module php-amqp - AMQP extension for PHP php7.0-bz2 - bzip2 module for PHP php-rrd - PHP bindings to rrd tool system php-uuid - PHP UUID extension php-memcache - memcache extension module for PHP php-gmagick - Provides a wrapper to the GraphicsMagick library php-smbclient - PHP wrapper for libsmbclient php-zmq - ZeroMQ messaging bindings for PHP php-igbinary - igbinary PHP serializer php-msgpack - PHP extension for interfacing with MessagePack php-geoip - GeoIP module for PHP php7.0-bcmath - Bcmath module for PHP php7.0-mbstring - MBSTRING module for PHP php7.0-soap - SOAP module for PHP php7.0-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP php7.0-zip - Zip module for PHP php-tideways - Tideways PHP Profiler Extension php-yac - YAC (Yet Another Cache) for PHP php-mailparse - Email message manipulation for PHP php-oauth - OAuth 1.0 consumer and provider extension php-propro - propro module for PHP php-raphf - raphf module for PHP php-solr - PHP extension for communicating with Apache Solr server php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP php-gearman - PHP wrapper to libgearman php7.0-dba - DBA module for PHP
PHP7.0과 해당 모듈이 설치되면 Apache 웹 서버를 다시 시작하고 다음과 같이 PHP 버전을 확인할 수 있습니다.
$ sudo service apache2 restart $ php -v
PHP 7.0.7-1+donate.sury.org~trusty+1 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
/ var/www/html 디렉토리에 info.php
파일을 생성하여 PHP7 정보를 확인할 수도 있습니다.
$ sudo vi /var/www/html/info.php
다음 코드를 삽입하고 http : //server_IP-address/info.php
를 통해 페이지에 액세스하십시오.
<?php phpinfo(); ?>

이 섹션에서는 PHP7.0으로 업그레이드하고 Nginx 웹 서버로 PHP-FPM을 업데이트하는 과정을 안내합니다. 여기서 PHP 코드는 PHP-FPM을 사용하여 실행됩니다.
아래 명령을 실행하여 최신 PHP-FPM 패키지를 설치하십시오.
$ sudo apt-get install php7.0 $ sudo apt-get install php7.0-fpm
이제 PHP가 업그레이드되었지만 MySQL을 사용하는 경우 다음 명령을 실행하여 다음과 같이 PHP-MySQL 바인딩 및 일부 추가 모듈을 업데이트해야합니다.
$ sudo apt-get install php7.0-mysql php7.0-cli php7.0-gd php7.0-json
다음으로/etc/nginx/sites-enabled/default 파일 또는 PHP를 사용하고 지원해야하는 가상 사이트의 모든 파일에 fastcgi_pass
지시문을 추가해야합니다. -PHP가 Nginx와 통신하는 데 사용하는 FPM 소켓 파일이 변경되었습니다.
자주 사용하는 편집기를 사용하고 다음과 같이 편집 할 파일을 엽니 다.
$ sudo vi /etc/nginx/sites-enabled/default
다음과 같이 수정하거나 추가하십시오.
location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
그런 다음 다음과 같이 Nginx와 php-fpm을 다시 시작합니다.
$ sudo service nginx restart $ sudo service php7.0-fpm restart
마지막으로, PHP 버전을 먼저 확인한 다음 웹 서버에서 테스트하여 PHP가 작동하는지 여부를 테스트 할 수 있습니다.
$ php -v
/ usr/share/nginx/html/디렉토리에 작은 info.php 파일을 작성하여 PHP 패키지에 대한 정보를 얻을 수 있습니다.
$ sudo vi /usr/share/nginx/html/info.php
이 코드를 info.php 파일에 넣으십시오.
<?php phpinfo(); ?>
파일을 저장하고 종료하십시오.
웹 브라우저를 열고 http : //server_IP-address/info.php
를 입력하면 아래 페이지에서 PHP 패키지에 대한 세부 정보를 볼 수 있습니다.

이제 Ubuntu 14.04/14.10 시스템에서 PHP 7.0을 즐겁게 사용할 수 있으며이 가이드가 도움이되기를 바랍니다.
PHP 업그레이드에 관한 추가 정보 나 질문이 있으시면 아래 댓글 섹션에 의견을 남겨 주시기 바랍니다.