В то время как множество Linux-дистрибутивов занимаются включением PHP7 в свои репозитории, и придется подождать, уже есть энтузиасты, которые предлагают поддержку PHP7 в своих репозиториях.
Содержание статьи
Обновление PHP до версии 7 на Ubuntu
Для начала добавьте репозиторий PPA от Ondrej Surý.
sudo apt-get install python-software-properties software-properties-common sudo add-apt-repository ppa:ondrej/php sudo apt-get update
Удалите PHP5 с вашего устройства.
sudo apt-get purge php5-fpm php5-mysql php5-common sudo apt-get --purge autoremove
Установите PHP7 и необходимые для него расширения:
sudo apt-get install php7.0-fpm php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl php7.0-mbstring
Обновление до PHP7 на системе Debian
Добавьте репозиторий dotdeb. org, вставив следующий текст в файл /etc/apt/sources. list.
deb http://packages.dotdeb. org jessie all deb-src http://packages.dotdeb. org jessie all
deb http://packages.dotdeb. org wheezy all deb-src http://packages.dotdeb. org wheezy all
deb http://packages.dotdeb. org squeeze all deb-src http://packages.dotdeb. org squeeze all
Загрузите и настройте ключ GnuPG.
wget https://www. dotdeb. org/dotdeb. gpg sudo apt-key add dotdeb. gpg sudo apt-get update
Удалите PHP5 с вашего устройства.
sudo apt-get purge php5* sudo apt-get --purge autoremove
sudo apt-get install php7.0-fpm php7.0-mysql php7.0-common php7.0-gd php7.0-json php7.0-cli php7.0-curl
Настройка Nginx
После установки PHP7 ваш сайт может столкнуться с ошибкой 404 — не найдено. Для решения этой проблемы необходимо внести изменения в конфигурацию Nginx.
sudo vi /etc/nginx/sites-available/yourdomain.com
Установите директиву fastcgi_pass в вашем конфигурационном файле.
fastcgi_pass unix:/var/run/php5-fpm.sock;
Конечно, предоставьте текст, который нужно перефразировать.
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
Сохраните изменения и закройте файл. После этого обновите настройки Nginx.
sudo service nginx reload
Теперь ваш сайт должен функционировать без ошибок.
Настройка конфигурации пула PHP файла
Сначала узнайте, какое имя пользователя применяет ваш Nginx; оно указано в первой строке файла /etc/nginx/nginx.conf.
less /etc/nginx/nginx.conf
По умолчанию в PHP7 пользователь и группа устанавливаются на www-data. Если ваш Nginx также настроен на использование www-data в качестве пользователя и группы, то настройка файла пула не требуется. Однако, если в Nginx используется пользователь и группа nginx, вам потребуется внести изменения.
В файле /etc/nginx/nginx.conf вы можете установить имя пользователя Nginx на www-data.
sudo vi /etc/nginx/nginx.conf
Смените пользователя на www-data, после чего обновите настройки Nginx. Альтернативно, можно отредактировать файл пула PHP и установить имя пользователя на nginx.
sudo vi /etc/php/7.0/fpm/pool. d/www.conf
Пожалуйста, измените данную строку.
user = www-data group = www-data listen. owner = www-data listen. group = www-data
Замените все вхождения www-data на nginx. После этого сохраните изменения и закройте файл. Далее перезапустите PHP-FPM.
sudo service php7.0-fpm reload
Как удостовериться в достоверности информации о PHP7?
Создайте файл с именем info.php в корневой директории вашего сайта и вставьте в него следующий текст.
Сохраните файл и закройте его. Затем откройте этот файл в вашем веб-браузере.
www.yourdomain.com/info.php
Вам необходимо обратить внимание на следующее.

Рекомендуется удалить этот файл с вашего сервера после проверки сведений о PHP7, чтобы избежать несанкционированного доступа к данным о вашем сервере.

