В прошлом существовал большой мануал по тому, как с нуля установить на сервере стек LEMP. К сожалению, данный материал канул в Лету во время переноса статей, а писать его повторно у меня никакого желания так и не появилось.
UPD: Новая версия языка, - PHP 7.3, - .
Релиз стабильной версии 7.2 состоялся в конце ноября. Изменений довольно много , но сейчас не о них. Ниже простой способ, с помощью которого я обновил свой существующий PHP 7.1 FPM до PHP 7.2 FPM .
1. Добавляем репозиторий.
sudo add-apt-repository ppa:ondrej/php sudo apt update2. Устанавливаем пакеты.
sudo apt install php7.2 php7.2-common php7.2-cli php7.2-fpm php7.2-gd php7.2-mysql php7.2-curl php7.2-simplexml php7.2-zipDpkg -l | grep php | tee packages.txt
Текущие пакеты будут сохранены в packages.txt . После установки новой версии PHP откройте файл и сравните список установленных пакетов.
3. Настройка PHP.
Открываем /etc/php/7.2/fpm/pool.d/www.conf , изменяем значение параметра listen :
Listen = 127.0.0.1:9000
4. Конфигурация NGINX
Если у вас уже был установлен FPM-пакет, изменений делать нет необходимости. Иначе в конфиге сайта добавьте\измените:
Location ~ \.php$ { try_files $uri =404; fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; }
5. Удаляем старые файлы PHP.
Если все прошло отлично и php -v утверждает, что вы используете необходимую версию PHP, за ненадобностью удаляем старые файлы командой:
Sudo apt purge php7.1*
5. Ну и всякое.
Не забываем после всех изменений перезапустить сервисы.
Service nginx restart service php7.2-fpm restart
На этом все. Наслаждайтесь новым PHP 7.2:)
В этой статье я опишу процесс установка PHP 7 в Ubuntu из PPA-репозитория. Эта заметка будет написана в формате небольшого мануала, поэтому я постараюсь кратко изложить техническую техническую сторону процесса. Дополнительно, в предыдущих моих постах вы можете прочить как установить PHP 7 в и . А еще есть описание процесса из исходников в Debian, это вариант более трудоемкий, но зато имеет очевидные преимущества с точки зрения оптимизации.
Установка PHP 7 в Ubuntu
На данный момент PHP 7 официально не доступен для установки в Ubuntu. Но мы можем установить PHP 7 в Ubuntu используя PPA — персональный репозиторий apt, размещенный на сайте Launchpad . С помощью PPA сторонние разработчики имеют возможность создавать и распространять пакеты для Ubuntu за пределами официальных каналов.
С помощью команды ниже добавьте репозиторий PHP 7 в Ubuntu:
Add-apt-repository ppa:ondrej/php
После установки PPA, обновите локальный кэш пакетов:
Apt-get update
Теперь у нас есть доступ к новым пакетам, мы можем выполнить установку PHP 7 в Ubuntu. В этой статье я опишу процесс настройки PHP 7 для использования его в связке с веб-сервером Nginx. Для этого нам потребуется установить PHP-FPM:
Apt-get install php7.0-fpm
Если ваше скрипты используют в процессе работы MySQL, выполните команду:
Apt-get install php7.0-mysql
Настройка PHP 7 для работы с Nginx
Процессы PHP 7 и Nginx взаимодействуют между собой с помощью unix-сокета. По умолчанию в PHP 7 unix-сокет имеет следующее расположение:
/var/run/php/php7.0-fpm.sock
Откройте конфигурационный файл default в текстовом редакторе nano:
Nano /etc/nginx/sites-enabled/default
Полностью удалите все содержимое файла default , а заетем скопируйте строки из примера ниже:
Server { listen 80 default_server; root /var/www/html; index index.php index.html; server_name _; location / { try_files $uri $uri/ /index.php?q=$uri&$args; } location ~ \.php$ { try_files $uri = 404; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Закройте файл и сохраните изменения. Чтобы использовать новые настройки необходимо перезапустить Nginx:
Nginx -t service nginx restart
Проверка работы PHP 7
Чтобы проверить правильность установки и настройки PHP 7 в Ubuntu, в коневом каталоге сайта создайте файл:
Nano /var/www/html/info.php
Следующего содержания:
Откройте файл в вашем браузере:
Http://server_ip/info.php
Если вы правильно установили и настроили PHP 7 в Ubuntu, вы должны увидеть страницу содержащую информацию о его конфигурации.
Если вы пользователь Linux, то обратитесь к статье " ".
Выход PHP 7
На данный момент доступен PHP 7.0.0 Alpha выпуск 2. В самые ближайшие дни появится первая бета. Ни альфы ни беты не рекомендуются для реальной работы. Но попробовать их на тестовом сервере уже можно.
Тем паче, что изменения PHP7 очень значительны:
- Увеличение производительности PHP 7 до двух раз по сравнению с PHP 5.6 (вот это да!)
- Ожидаемая поддержка 64-бит
- Многие фатальные ошибки теперь Exceptions (исключения)
- Удаление старых и не поддерживаемых SAPI (программных интерфейсов серверных приложений) и расширений
- Оператор NULL коалесцирующий (??)
- Комбинированный оператор сравнения (<=>)
- Декларация возвращаемого типа
- Декларация скалярного типа
- Анонимные классы
PHP любой версии почти всегда ставят в паре с сервером и системой управления базами данных. Если у вас совсем нет сервера, то обратитесь к статье « ». Когда в той статье дойдёте до установки PHP, то возвращайтесь сюда.
Если сервер у вас уже есть, то общие вопросы по обновлению вы найдёте в статье « ».
Особенности установки PHP 7 на Windows
Я ставил на Apache 2.4 VC14. Если вы ещё не обновили сервер, то сделайте это. Ссылки и подробности по этой инструкции.
Для скачивания PHP 7.0 перейдите на
Скрыто от гостей
Все программы всегда скачивайте только с официальных сайтов!
Выберите версию Thread Safe (64-битную или 32-битную как и ваш сервер Apache).
Обязательно нужен Visual C++ Redistributable for Visual Studio 2015 ! Если вы уже обновили сервер Apache, то этому серверу также нужен этот пакет. Т.е. вы уже должны были его установить. Если это не так, то перейдите на
Скрыто от гостей
И скачайте пакет соответствующей битности.
После скачивания установите его.
Если при установке сервера вы пользуетесь , то распакуйте содержимое скаченного архива с PHP в каталог C:ServerbinPHP .
Перейдите в этот каталог, найдите файл php.ini-development и переименуйте его в php.ini .
Откройте этот файл любым текстовым редактором, найдите там строчку
; extension_dir = "ext"
И замените её на
Extension_dir = "ext"
Теперь нам нужно включить расширения для PHP, поскольку без них большинство сайтов и скриптов работать не будут. Внимание: на данный момент с некоторыми расширениями не удаётся запустить сервер, поэтому внимательно посмотрите ниже. Найдите группу строк:
;extension=php_bz2.dll ;extension=php_curl.dll ;extension=php_fileinfo.dll ;extension=php_gd2.dll ;extension=php_gettext.dll ;extension=php_gmp.dll ;extension=php_intl.dll ;extension=php_imap.dll ;extension=php_interbase.dll ;extension=php_ldap.dll ;extension=php_mbstring.dll ;extension=php_exif.dll ; Must be after mbstring as it depends on it ;extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client ;extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo_sqlite.dll ;extension=php_pgsql.dll ;extension=php_pspell.dll ;extension=php_shmop.dll
И замените их на следующие строки. Обратите внимание, некоторые расширения оставлены отключёнными, поскольку при их включении Apache не запускается!
Extension=php_bz2.dll extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_gettext.dll extension=php_gmp.dll extension=php_intl.dll extension=php_imap.dll ;extension=php_interbase.dll extension=php_ldap.dll extension=php_mbstring.dll extension=php_exif.dll ; Must be after mbstring as it depends on it extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll extension=php_pdo_odbc.dll extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll extension=php_pgsql.dll ;extension=php_pspell.dll extension=php_shmop.dll
Теперь находим следующую группу строк:
;extension=php_soap.dll ;extension=php_sockets.dll ;extension=php_sqlite3.dll ;extension=php_tidy.dll ;extension=php_xmlrpc.dll ;extension=php_xsl.dll
Эти расширения можно включить все:
Extension=php_soap.dll extension=php_sockets.dll extension=php_sqlite3.dll extension=php_tidy.dll extension=php_xmlrpc.dll extension=php_xsl.dll
Сохраняем и закрываем файл.
Теперь переходим к конфигурационному файлу Apache. У тех, кто ставил по моей инструкции, этот файл здесь C:ServerbinApache24confhttpd.conf
Открываем его любым текстовым редактором. Находим строки, которыми мы подключали PHP 5, и удаляем их.
Php - популярный язык веб программирования и разработки сайтов. С каждой новой версией язык становился все интереснее и интереснее, начиналось все с простого функционально ориентированного языка программирования пригодного только для создания веб страничек, и наконец Php 5 сейчас позиционируется как полнофункциональный объективно ориентированный скриптовый язык. php 7 преподносит много интересных улучшений и исправлений таких как тотальная оптимизация производительности и добавление многопоточности но сегодня не об этом, обзоров возможностей php 7 вы можете найти вагон и маленькую тележку на просторах интернета.
В этой инструкции будет описана установка php 7 в Linux, она рассчитана в первую очередь на пользователей Ubuntu но подойдет и для других дистрибутивов. Мы рассмотрим установку из PPA в Ubuntu и сборку из исходников.
Репозитории PPA позволяют сторонним разработчикам распространять пакеты своих программ в обход официальных репоизиториев Ubuntu. Обычно из PPA можно получить самые новые или даже бета версии программ. После официального релиза php 7 был сделан PPA для Ubuntu. Добавим его в систему:
$ sudo add-apt-repository ppa:ondrej/php-7.0
sudo apt-get update
И можно устанавливать:
sudo apt-get install php7.0
Для поддержки mysql нужно установить библиотеку:
sudo apt-get install php7.0-mysql
Для установки php в виде модуля fpm выполните:
sudo apt-get install php7.0-fpm
Сборка php 7 из исходников
Сначала установим необходимые нам инструменты и библиотеки:
sudo apt-get install git autoconf bison libxml2 libxml2-dev opessllibcurl4-openssl-dev libbz2-dev libjpeg-dev libpng-dev libxpm-dev libfreetype6-dev libgmp-dev libmcrypt-dev libmysqld-dev libpspell-dev librecode-dev
Создадим рабочую папку:
Синхронизируем исходники php с репозитория git:
git clone https://git.php.net/repository/php-src.git
Переходим непосредственно к сборке и установке, программа будет установлена в текущую папку - ~/tmp:
cd php-src
$ sudo ./buildconf
$ sudo ./configure \
--enable-mbstring \
--enable-zip \
--enable-bcmath \
--enable-pcntl \
--enable-ftp \
--enable-exif \
--enable-calendar \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-curl \
--with-mcrypt \
--with-iconv \
--with-gmp \
--with-pspell \
--with-gd \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-zlib-dir=/usr \
--with-xpm-dir=/usr \
--with-freetype-dir=/usr \
--with-t1lib=/usr \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-openssl \
--with-mysql=/usr \
--with-pdo-mysql=/usr \
--with-gettext=/usr \
--with-zlib=/usr \
--with-bz2=/usr \
--with-recode=/usr \
--with-mysqli=/usr/bin/mysql_config
$ make
Создаем папку для конфигурационного файла:
mkdir $HOME/tmp/usr/etc
Создаем конфигурационный файл php со следующим содержимым:
nano $HOME/tmp/usr/etc/php.ini
max_execution_time=600
memory_limit=128M
error_reporting=0
display_errors=0
log_errors=0
user_ini.filename=
realpath_cache_size=2M
cgi.check_shebang_line=0
zend_extension=opcache.so
opcache.enable_cli=1
opcache.save_comments=0
opcache.fast_shutdown=1
opcache.validate_timestamps=1
opcache.revalidate_freq=60
opcache.use_cwd=1
opcache.max_accelerated_files=100000
opcache.max_wasted_percentage=5
opcache.memory_consumption=128
opcache.consistency_checks=0
Сохраните, и php 7 установлен и настроен, можно переходить к тестированию.
В этой статье мы покажем вам, как установить PHP 7.2 на Ubuntu 16.04. PHP (Hypertext Preprocessor) – это язык сценариев на стороне сервера с открытым исходным кодом, предназначенный в основном для создания динамических интерактивных веб-сайтов. PHP является одним из самых популярных языков и свободно доступен для перераспределения и модификаций. PHP можно запускать практически на любом веб-сервере (например, Apache) и на каждой платформе ОС (Linux, Mac OS, Windows). PHP 7.2 был официально выпущен в прошлом году. В последней версии PHP 7.2 есть новые и улучшенные функции и функции, которые позволят разработчикам лучше писать код.
Требования:
- Для целей данного руководства мы будем использовать Ubuntu VPS. Наш уже поставляется с предустановленным рабочим стеком LAMP. Тем не менее, мы все равно проведем все необходимые шаги и покажем вам, как устанавливать и настраивать стек LAMP самостоятельно, если вы делаете это на чистом сервере.
- Также необходим полный доступ к SSH-корню или .
Шаг 1. Подключение к вашему серверу через SSH и обновление пакетов сервера.
Прежде чем мы начнем, давайте качестве пользователя root и обновим ваши пакеты ОС Ubuntu до последней доступной версии.
Чтобы подключиться к вашему серверу через SSH в качестве пользователя root, используйте следующую команду:
Ssh [email protected]_ADDRESS -p PORT_NUMBER
Замените «IP_ADDRESS» и «PORT_NUMBER» на ваш фактический IP-адрес сервера и номер порта SSH.
После установки убедитесь, что пакеты вашей серверной ОС обновлены, выполнив следующие команды:
Apt-get update apt-get upgrade
Если вы впервые входите в свой новый Ubuntu VPS, вы также можете проверить нашу статью о для некоторых дополнительных базовых настроек и безопасности.
Шаг 2. Установка веб-сервера
В этом разделе мы покажем вам, как установить веб-сервер на свой VPS. Мы можем установить Apache или nginx в качестве веб-сервера. Для целей этого руководства мы установим веб-сервер Apache. Apache – это быстрый и безопасный веб-сервер и один из самых популярных и широко используемых веб-серверов в мире.
Чтобы установить веб-сервер Apache, выполните следующую команду на своем сервере:
Apt-get install apache2
По завершении установки вы должны запустить Apache:
Systemctl start apache2
Кроме того, вы можете включить Apache для автоматического запуска при загрузке сервера:
Systemctl enable apache2
Чтобы проверить статус веб-сервера Apache и убедиться, что он запущен и работает, вы можете использовать следующую команду:
Systemctl status apache2
Чтобы убедиться, что Apache запущен, вы также можете открыть веб-браузер и ввести IP-адрес своего сервера (например, http://your_server_ip_address ). Если Apache успешно установлен, вы должны увидеть страницу приветствия по умолчанию Apache.
Шаг 3: Установите PPD Ondřej Surý
PHP 7.2 можно установить с помощью PPA Ondřej Surý, поэтому установите software-properties-common и python-software-properties:
Sudo apt-get install software-properties-common python-software-properties
Затем добавьте ondrej PPA и обновите свои источники:
Sudo add-apt-repository -y ppa:ondrej/php sudo apt-get update
Шаг 4. Установка PHP 7.2.
Установите PHP 7.2, используя следующую команду:
Sudo apt-get install php7.2 php7.2-cli php7.2-common
Шаг 5: Поиск и установка определенных расширений PHP 7.2
Если вы хотите установить определенное расширение PHP 7.2, вы можете выполнить поиск, если он доступен, используя следующую команду:
Sudo apt search php7.2
Шаг 7. Установка наиболее часто используемых расширений PHP.
Чтобы установить наиболее часто используемые расширения PHP, вы можете использовать следующую команду:
Sudo apt-get install php7.2-curl php7.2-gd php7.2-json php7.2-mbstring php7.2-intl php7.2-mysql php7.2-xml php7.2-zip
Шаг 8: Проверьте установку PHP
Используйте следующую команду, чтобы проверить версию PHP, установленную на вашем сервере:
Вы должны получить следующий результат:
PHP 7.2.9-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Aug 19 2018 07:16:12) (NTS) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.9-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
Теперь PHP 7.2 был установлен на вашем сервере Ubuntu, и если мы хотим изменить версию PHP по умолчанию на PHP 7.2, которая используется веб-сервером, нам нужно отключить старую версию PHP 7.0 и включить вновь установленную.
Отключить php 7.0
a2dismod php7.0Включить php 7.2
a2enmod php7.2Перезапустите веб-сервер Apache, чтобы изменения вступили в силу:
Systemctl restart apache2
Чтобы протестировать вашу установку и проверить, что расширения Apache, PHP и PHP работают правильно, создайте новый файл info php:
Vi /var/www/html/phpinfo.php
Добавьте к нему следующий контент:
Откройте файл «phpinfo.php» с помощью веб-браузера:
Http://
и посмотрите текущую информацию о PHP на вашем сервере.
Вот и все. Вы успешно установили PHP 7.2 на сервере Ubuntu 16.04. Для получения дополнительной информации о PHP 7 обратитесь к официальной документации PHP: http://php.net/docs.php.