PHP

Начиная с версии Ubuntu 16.04 (Xenial Xerus) используется PHP версии 7. Информация о PHP версии 5 (в более ранних версиях Ubuntu) находится на странице PHP5.

PHP

PHP – скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений.

Версии PHP в Ubuntu

Ubuntu PHP
12.04 LTS (Precise) 5.3
14.04 LTS (Trusty) 5.5
15.10 (Wily) 5.6
16.04 LTS (Xenial) 7.0
18.04 LTS 7.2

Варианты использования PHP

Интерпретатор PHP поставляется в нескольких вариантах для разных способов запуска и использования PHP:

  • Модуль для Apache libapache2-mod-php
  • php-fpm и proxy_fcgi
  • php-cgi и libapache2-mod-fcgid
  • CLI

Модуль для Apache

Установка

Для установки выполните:

sudo apt-get install libapache2-mod-php

Настройка

Файлы настройки PHP модуля для Apache располагаются в директории /etc/php/7.0/apache2. Данная директория содержит:

  • conf.d - директория с настройками активных PHP-расширений;
  • php.ini - файл настройки PHP.

После изменения файлов настройки PHP или изменения PHP-расширений требуется перезапуск сервера Apache:

sudo service apache2 reload

Проверка работы

В директории /var/www/html (или в корне любого другого виртуального хоста) создайте файл test.php и запишите в него следующую строку:

<?php phpinfo();

Теперь попробуйте в своем браузере перейти на созданную страницу http://localhost/test.php. Если вы видите описание установленного PHP, значит вы все настроили правильно.

php-fpm

FPM (менеджер процессов FastCGI) является альтернативной реализацией PHP FastCGI с несколькими дополнительными возможностями, обычно используемыми для высоконагруженных сайтов.

Установка

Для установки выполните:

Если установлен libmod-php то его надо сначала выключить sudo a2dismod a2dismod php7.2.conf
sudo apt-get install php-fpm
sudo a2enmod proxy_fcgi
sudo a2enconf php7.2-fpm.conf

Настройка

Файлы настройки PHP в виде модуля для Apache располагаются в директории /etc/php/7.0/fpm. Данная директория содержит:

  • conf.d - директория с настройками активных PHP-расширений;
  • pool.d - директория с настройками FPM;
  • php-fpm.conf - файл настройки FPM;
  • php.ini - файл настройки PHP.

После изменения файлов настройки PHP или изменения PHP-расширений требуется перезапуск FPM:

sudo service php7.0-fpm reload
sudo systemctl restart apache2

CLI

CLI (интерпретатор командной строки) предоставляет возможность разрабатывать консольные приложения на PHP.

Установка

Для установки выполните:

sudo apt-get install php-cli

Настройка

Файлы настройки CLI располагаются в директории /etc/php/7.0/cli. Данная директория содержит:

  • conf.d - директория с настройками активных PHP-расширений;
  • php.ini - файл настройки PHP.

PHP расширения

Дополнительный функционал в PHP реализован с помощью расширений. Некоторые расширения могут сразу поставляться с интерпретатором, а некоторые расширения следует устанавливать дополнительно.

Установка

Для того, чтобы подключить к PHP необходимое расширение, надо установить его. Ниже показаны примеры установки некоторых расширений.

Подключение расширения GD:

sudo apt-get install php-gd

Подключение расширения MySQL:

sudo apt-get install php-mysql

Подключение расширения Mcrypt:

sudo apt-get install php-mcrypt

Настройка

Файлы настроек доступных расширений располагаются в директории /etc/php/7.0/mods-available. У каждого варианта запуска интерпретатора существует своя директория conf.d в которой находятся символьные ссылки на активные расширения.

Установка других версий PHP

Данный способ показывает, как установить версию PHP, не входящую в стандартные репозитории вашей версии Ubuntu. Для установки используются пакеты из PPA.

1. Посмотрите список установленных пакетов PHP для удаления ненужных:

dpkg -l | grep php| awk '{print $2}' |tr "\n" " "

2. Добавьте PPA в список репозиториев:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

3. Установите вашу версию PHP.

Пример установки PHP версии 5.6:

sudo apt-get install php5.6

Пример установки некоторых модулей для PHP версии 5.6:

sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml

Ссылки