Php

Debian 8 php 7: Установка PHP7 и Apache2 в Debian 8

Содержание

Обновляем PHP 5.6 до PHP 7.2 на Debian Jessie

Пришло время обновить PHP с версии 5.6 на 7.2, даже wordpress перестал обновляться, ссылаясь на то, что надо ему PHP7. Ну что же, надо, значит будем обновлять.

Для начала обновим систему, так как текущая система у нас Wheezy, то не плохо было бы ее поднять до Jessie, делаем.

Обновление ОС Debian с Wheezy до Jessie

Обновляем лист репозиториев:

# cat /etc/apt/sources.list
deb http://deb.debian.org/debian/ jessie main contrib non-free
deb-src http://deb.debian.org/debian/ jessie main contrib non-free

deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free



# cat /etc/apt/sources.list

deb http://deb.debian.org/debian/ jessie main contrib non-free

deb-src http://deb.debian.org/debian/ jessie main contrib non-free

 

deb http://security.debian.org/ jessie/updates main contrib non-free

deb-src http://security.debian.org/ jessie/updates main contrib non-free

Обновляем репозитории и ставим пакеты для Jessie:

# apt-get update && apt-get install apt -t jessie



# apt-get update && apt-get install apt -t jessie

По завершении обновляем систему и удаляем устаревшие пакеты:

# apt-get upgrade && apt-get dist-upgrade



# apt-get upgrade && apt-get dist-upgrade

Внимательно проверьте все запросы debconf и при необходимости обновите файлы конфигурации.

Удаляем не актуальные пакеты:

Перезагружаем систему и проверяем что система обновлена.

# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.11 (jessie)
Release: 8.11
Codename: jessie



# lsb_release -a

No LSB modules are available.

Distributor ID: Debian

Description:    Debian GNU/Linux 8.11 (jessie)

Release:        8.11

Codename:       jessie

Обновление PHP 5 до PHP 7

Теперь приступим к обновлению PHP, для начала добавим необходимые репозитории и ключи.

Для версии PHP 7.0:

# wget https://www.dotdeb.org/dotdeb.gpg
# apt-key add dotdeb.gpg
# nano /etc/apt/sources.list
deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all



# wget https://www.dotdeb.org/dotdeb.gpg

# apt-key add dotdeb.gpg

# nano /etc/apt/sources.list

deb http://packages.dotdeb.org jessie all

deb-src http://packages.dotdeb.org jessie all

Для версии PHP 7.2:

# wget https://packages.sury.org/php/apt.gpg
# apt-key add apt.gpg
# nano /etc/apt/source.list
deb https://packages.sury.org/php/ jessie main



# wget https://packages.sury.org/php/apt.gpg

# apt-key add apt.gpg

# nano /etc/apt/source.list

deb https://packages.sury.org/php/ jessie main

Теперь обновляем репозитории:

После обновления ставим необходимые пакеты, в моем случае это версия 7.2:

apt-get install php7.2-common php7.2-cgi php7.2-cli php7.2-phpdbg php7.2-fpm \
libphp7.2-embed php7.2-dev php7.2-curl php7.2-gd php7.2-imap php7.2-interbase \
php7.2-intl php7.2-ldap php7.2-readline php7.2-odbc php7.2-pgsql php7.2-pspell \
php7.2-recode php7.2-tidy php7.2-xmlrpc php7.2 php7.2-json php-all-dev php7.2-sybase \
php7.2-sqlite3 php7.2-mysql php7.2-opcache php7.2-bz2 libapache2-mod-php7.2 php7.2-mbstring \
php7.2-pdo php7.2-dom php7.2-enchant php7.2-gmp php7.2-soap php7.2-zip



apt-get install php7.2-common php7.2-cgi php7.2-cli php7.2-phpdbg php7.2-fpm \

libphp7.2-embed php7.2-dev php7.2-curl php7.2-gd php7.2-imap php7.2-interbase \

php7.2-intl php7.2-ldap php7.2-readline php7.2-odbc php7.2-pgsql php7.2-pspell \

php7.2-recode php7.2-tidy php7.2-xmlrpc php7.2 php7.2-json php-all-dev php7.2-sybase \

php7.2-sqlite3 php7.2-mysql php7.2-opcache php7.2-bz2 libapache2-mod-php7.2 php7.2-mbstring \

php7.2-pdo php7.2-dom php7.2-enchant php7.2-gmp php7.2-soap php7.2-zip

Внимательно проверьте все запросы debconf и при необходимости обновите файлы конфигурации.

Проверяем, в итоге PHP обновился аж до версии 7.3:

# php -v
PHP 7.3.6-1+0~20190531112546.39+jessie~1.gbp6131b7 (cli) (built: May 31 2019 12:11:07) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.6-1+0~20190531112546.39+jessie~1.gbp6131b7, Copyright (c) 1999-2018, by Zend Technologies



# php -v

PHP 7.3.6-1+0~20190531112546.39+jessie~1.gbp6131b7 (cli) (built: May 31 2019 12:11:07) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies

    with Zend OPcache v7.3.6-1+0~20190531112546.39+jessie~1.gbp6131b7, Copyright (c) 1999-2018, by Zend Technologies

 

Установка новой версии PHP 7.2

Недавно был релиз PHP 7.2, который привнёс несколько отличных новых фич и улучшений безопасности в язык. Например, таких, как указание типа object, разумное поведение count() и многое другое.

Здесь мы собрали краткие руководства о том, как установить PHP 7.2 на нескольких разных операционных системах:

Ubuntu 14.04, 16.04, 17.04 и 17.10:

РНР 7.2 можно установить с помощью PPA Ondřej(я) Surý:


sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.2-cli

Полный список доступных пакетов смотрите здесь.

Debian 8 (Jessie) или 9 (Stretch)

Ondřej Surý также предоставляет пакеты РНР 7.2 для Debian, которые могут быть установлены с помощью следующих команд:


sudo apt-get install apt-transport-https lsb-release ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt-get update
sudo apt-get install php7.2-cli

Debian 7 (Wheezy)

PHP 7.2 можно скомпилировать из исходников, следуя инструкциям, изложенным здесь: Установка PHP 7 на Debian Wheezy. Убедитесь, что после клонирования репозитория php-src, вы переключились (git checkout) на соответствующий тег.

CentOS / RHEL 6+ и Fedora 25+

Remi Collet, — один из релиз-менеджеров PHP 7.2, — также предоставляет rpm-пакеты для этой новой версии. Вы можете использовать мастер настройки, чтобы узнать какие шаги нужно предпринять для установки новой версии, или посмотрите сайт Remi для получения дополнительной информации о релизе PHP 7.2.0.

Mac OS X

РНР 7.2 можно установить через Liip-тулзу PHP-OSX:


curl -s https://php-osx.liip.ch/install.sh | bash -s 7.2

Или, если вы предпочитаете использовать Homebrew:


brew tap homebrew/homebrew-php
brew install php72

Windows

Дистрибутивы PHP 7.2 для Windows можно найти на сайте windows.php.net: http://windows.php.net/download#php-7.2

Инструкции по установке дистрибутива вы можете найти здесь: https://www.webtechgadgetry.com/install-php-7-windows/

phpbrew

phpbrew — это действительно хороший инструмент, который поможет вам загрузить, скомпилировать и управлять несколькими версиями PHP. Если вы уже следовали инструкциям по его установке и phpbrew у вас уже работает, то PHP 7.2.0 можно установить двумя простыми командами:


phpbrew update
phpbrew install -j $(nproc) 7.2.0 +default

Docker

Официальные РНР образы можно найти на Docker Hub. Вы можете использовать тег php:7.2 для базовых образов.

Если вы хотите повозиться с PHP 7.2 в интерактивной оболочке, то просто запустите в терминале:


docker run -it --rm php:7.2

 

Установка модуля Ioncube Loader для PHP 7.2 Debian 8 Jessie

Ioncube Loader это PHP модуль, который предназначен для декодирования файлов, защищенных с помощью IonCube Encoder.

 

Рассмотрим как подключить модуль Ioncube Loader к PHP 7.2 версий в Debian 8 Jessie

 

Установка модуля Ioncube Loader

Скачиваем модуль, распаковываем его и копируем в каталог с остальными модулями PHP:



wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

tar xzf ioncube_loaders_lin_x86-64.tar.gz

cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20170718/ioncube_loader.so

Посмотреть расположение каталога с модулями PHP, можно командой:
php -i | grep extension_dir

 

Подключаем модуль Ioncube Loader в PHP. В файл конфигурации (/etc/php/7.2/cli/php.ini), после строки ( [PHP] ), добавляем строку подключения модуля:



zend_extension = /usr/lib/php/20170718/ioncube_loader.so

Настоятельно рекомендую проверять пути установки модуля, т.к. они могут отличатся от тех что написаны у меня

 

Проверяем подключен ли модуль в CLI:



php -v

 

PHP 7.2.2-1+0~20180205160612.18+jessie~1.gbpb78b58 (cli) (built: Feb 5 2018 17:24:47) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.1.1, Copyright (c) 2002-2017, by ionCube Ltd.

with Zend OPcache v7.2.2-1+0~20180205160612.18+jessie~1.gbpb78b58, Copyright (c) 1999-2018, by Zend Technologies

Проверяем подключен ли модуль в FPM:



service php7.2-fpm restart

php-fpm7.2 -i | grep ioncube

 

with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.1.1, Copyright (c) 2002-2017, by ionCube Ltd.

Проверяем подключен ли модуль в Apache:

 

 

Понравилась или оказалась полезной статья, поблагодари автора

 

Загрузка…

IT Crowd | Обновление до PHP7.2 в Debian 9

Оценка: 84.43% — 14 Голосов

x

Рассмотрим как можно перейти с PHP 7.0 или 7.1 на 7.2 с веб-сервером Apache2.

 Все команды выполняются под суперпользователем.

 

Подготовка к установке

Добавляем репозитории:


apt install ca-certificates apt-transport-https
wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
echo "deb https://packages.sury.org/php/ stretch main" | tee /etc/apt/sources.list.d/php.list

 

Обновляемся:


apt update
apt upgrade

 

Список установленных модулей:

Если вы не знаете какие модули используются в вашей системе то можно выяснить выполнив команду php -m

Удаляем PHP7.0:


apt-get purge php7*
apt-get --purge autoremove

 

Устанавливаем PHP7

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


apt install php7.2 gettext php-mysql php-pear php-php-gettext php7.2 php7.2-bcmath php7.2-bz2 php7.2-cli php7.2-common php7.2-curl php7.2-dba php7.2-fpm php7.2-gd php7.2-json php7.2-mbstring php7.2-mcrypt php7.2-mysql php7.2-opcache php7.2-readline php7.2-soap php7.2-tidy php7.2-xml php7.2-zip

После установки необходимо в Apache2 активировать PHP 7.2 FPM командами:


a2enmod proxy_fcgi setenvif
a2enconf php7.2-fpm

 

После перезапустить Apache2:


service apache2 restart

На этом установка окончена.

  • Просмотров: 28149

Добавить комментарий

Установка PHP 5.6, 7.0, 7.1, 7.2 одновременно в Debian 9 Stretch / Deepin 15

Всем привет. В этой  статье я расскажу как использовать несколько версий PHP параллельно в Debian 9.
Если вы пользователь вышеупомянутой то вам наверно знаете, что в базовой комплектации системы вы имеете возможность установить только PHP 7.0 и не более. Но если вам вдруг понадобится использовать несколько версий PHP одновременно, то эта статья для Вас.

Данная статья подразумевает что у вас уже установлен Web Server Apache 2 или Nginx
Если нет, то самое время это сделать:

Apache2

sudo apt install apache2

Nginx

apt-get install nginx

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

sudo apt install ca-certificates apt-transport-https 
wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
echo "deb https://packages.sury.org/php/ stretch main" | sudo tee /etc/apt/sources.list.d/php.list

Теперь устанавливаем требуемые нам версии. Данная команда установит PHP5.6, PHP7.0, PHP7.1, PHP7.2:

sudo apt install php5.6 php7.0 php7.1 php7.2

Если какая-то из версий вам не нужна, вы можете просто не устанавливать соответствующий пакет. В любом случае теперь вы имеетe возможность установить каждую из версий не сейчас а в будущем, если она Вам вдруг понадобится.
Как же теперь всем этим пользоваться? Очень просто:
После установки у нас по умолчанию начнет работать PHP7.2, в приоритете самая крайняя версия. Если ввести в терминале команду php -v то увидим следующий вывод:

andrey@debian:~$ php -v
PHP 7.2.2-1+0~20180205160742.18+stretch~1.gbpb78b58 (cli) (built: Feb  5 2018 16:07:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.2-1+0~20180205160742.18+stretch~1.gbpb78b58, Copyright (c) 1999-2018, by Zend Technologies

Переключать версии можно очень просто используя команду

sudo update-alternatives --config php

Запуск этой команды вызовет меню в терминале в котором вам нужно будет указать ту версию PHP которую вы хотите сейчас использовать в CLI или на Web сервера вашего окружения. Выглядит это так:

andrey@debian:~$ sudo update-alternatives --config php
There are 4 choices for the alternative php (providing /usr/bin/php).

  Selection    Path             Priority   Status
------------------------------------------------------------
* 0            /usr/bin/php7.2   72        auto mode
  1            /usr/bin/php5.6   56        manual mode
  2            /usr/bin/php7.0   70        manual mode
  3            /usr/bin/php7.1   71        manual mode
  4            /usr/bin/php7.2   72        manual mode

Press <enter> to keep the current choice[*], or type selection number:

В моем случаем мне сейчас необходима версия PHP 5.6, для того, чтобы протестировать требуемые мне фичи проекта.
В данном меню я просто нажимаю на клавиатуре цифру 1 и enter. После успешного сообщения если я наберу php -v в терминале, то вывод мне скажет что у меня  установлена версия PHP5.6  по умолчанию, следовательно все команды типа php -f somefile.php будут выполнятся от имени версии 5,6

Собственно вот и вся магия. Debian 9 не так уж плох в данном вопросе 🙂

Кстати, как установить родной MySQL Server в Debian 9,  я описал в этой статье Установка MySQL Server в Debian 9 Stretch
Если у Вас будут коментарии или замечания к статье, обязательно сообщите об этом в комментариях. Будем разбираться.
Удачного кодинга.

Поделиться ссылкой:

Понравилось это:

Нравится Загрузка…

Похожее

[РЕШЕНО] Обновление PHP до версии 7.4 на Ubuntu Server с NGINX + PHP-FPM + VestaCP

Сегодня в статье рассмотрим Обновление PHP до PHP 7.4 на Ubuntu Sever с панелью управления VestaCP и веб сервером Nginx + php-fpm.

Все началось после того, как WordPress предложил мне обновится до более новой версии PHP, а точнее до версии PHP 7.3 PHP 7.4

Ну раз предложил, то почему бы и нет. Тем более новая версия PHP 7.3 дает прирост 5%-10% по сравнению с PHP 7.2 и 20%-25% по сравнению с PHP 7.1. PHP 7.4 стала еще более быстрой+ 5-8% по сравнению с PHP 7.3

Обновление PHP на Ubuntu с VestaCP

Для обновления на новую версию PHP, подключаемся по SSH к нашему серверу.

ssh пользователь@IP-адрес_сервера

Далее добавим более свежий репозиторий для нашего PHP

sudo add-apt-repository ppa:ondrej/php

Обновим индексы:

sudo apt update

Устанавливаем php 7.4,а также некоторые необходимые дополнения.

sudo apt install php-pear php7.4 php7.4-common php7.4-cli php7.4-fpm php7.4-gd php7.4-mysql php7.4-mbstring php7.4-curl php7.4-xml php7.4-zip php7.4-json php7.4-imagick php7.4-xmlrpc php7.4-bz2 php7.4-dev php7.4-opcache php-memcached

После установки всех дополнений PHP 7.4 набираем в терминале следующую команду:

sudo update-alternatives --set php /usr/bin/php7.4

Данная команда назначит к запуску по умолчанию интерпретатор PHP 7.4.

Если же Вы хотите вернуть версию PHP 7.X, то набираем такую команду:

sudo update-alternatives --set php /usr/bin/php7.X

Скопируйте старый php.ini в новую директорию:

sudo cp /etc/php/7.X/fpm/php.ini /etc/php/7.4/fpm/php.ini

Останавливаем службу php7.X-fpm и запускаем php7.4-fpm:

sudo service php7.X-fpm stop
sudo service php-fpm stop
sudo service php7.4-fpm start
sudo service php-fpm restart

Проверяем всё ли запустилось:

sudo service php-fpm status
sudo service php7.4-fpm status

Должно выдать что-то вроде этого:

php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php7.4-fpm.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-05-22 15:12:32 UTC; 46min ago
       Docs: man:php-fpm7.4(8)
    Process: 400 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /et>
   Main PID: 252 (php-fpm7.4)
     Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
      Tasks: 3 (limit: 2127)
     Memory: 20.5M
     CGroup: /system.slice/php7.4-fpm.service
             ├─252 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
             ├─398 php-fpm: pool www
             └─399 php-fpm: pool www

Если после данной манипуляции перестали работать сайты на WordPress, то читаем дальше.

Решение ошибки 500 — внутренняя ошибка сервера.

И так мы подобрались к сути проблемы. После всех этих действий сайт с версией PHP 7.4 выдавал ошибку 500. Как только я останавливал 7.4 и запускал, ну скажем PHP 7.2 ошибка исчезала и сайт начинал работать в нормальном режиме.

Решил искать во всех конфигурационных файла PHP. Сравнивая два файла мне удалось найти некоторые отличия, но сути проблемы это не меняло. И вот когда я совсем отчаялся мне на глаза попадается конфигурационный файл PHP от панели VestaCP расположенный в директории /etc/php/7.2/fpm/pool.d/ и называется он как ваш домен. В моем случае obu4alka.ru.conf со следующим содержимым:

[obu4alka.ru]
 listen = 127.0.0.1:9001
 listen.allowed_clients = 127.0.0.1
 user = user
 group = user
 pm = ondemand
 pm.max_children = 4
 pm.max_requests = 4000
 pm.process_idle_timeout = 10s
 pm.status_path = /status
 php_admin_value[upload_tmp_dir] = /home/user/tmp
 php_admin_value[session.save_path] = /home/user/tmp
 env[HOSTNAME] = $HOSTNAME
 env[PATH] = /usr/local/bin:/usr/bin:/bin
 env[TMP] = /home/user/tmp
 env[TMPDIR] = /home/user/tmp
 env[TEMP] = /home/user/tmp

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

sudo cp /etc/php/7.2/fpm/pool.d/ /etc/php/7.4/fpm/

Если запускали старую версию PHP, то останавливаем службу php7.2-fpm и запускаем php7.4-fpm:

sudo service php7.2-fpm stop
sudo service php7.4-fpm start

Захожу на сайт, УРА!!! Ошибка 500 исчезла, сайт заработал в нормальном режим.


P.S. Также если не помогает, то двигаемся дальше. И да если сайт отказывается работать на новой версии PHP. Делаем следующее:

sudo nano /usr/local/vesta/conf/vesta.conf

Меняем значение на:

WEB_BACKEND='php74-php-fpm'

Также удаляем файлы:

sudo rm /etc/init.d/php-fpm
sudo rm /etc/init.d/php7.2-fpm

Далее копируем нашу PHP 7.4:

cp /etc/init.d/php7.4-fpm /etc/init.d/php-fpm

Рестарт PHP

sudo service php7.4-fpm restart
sudo service php-fpm restart

Если и после этого сайт отказывается работать на новой версии PHP , то уаляем старую версию:

sudo apt remove --purge php7.2
sudo apt autoremove
sudo apt autoclean

Если есть вопросы, то пишем в комментариях.

Также можете помочь проекту, заранее всем СПАСИБО!!!

.

RSS

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Установка системы

на Debian 8 Jessie с PHP7 — документация Akeneo PIM

Предупреждение

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

Вот краткое руководство по установке системных требований на Debian 8 Jessie с PHP7. Предполагается, что вы уже следовали руководству по установке системы на Debian 8 Jessie и у вас есть PIM, работающий с PHP5.

Примечание

Выполните следующие команды от имени пользователя root.

Монтаж системы¶

Чтобы установить PHP7 в Debian 8 Jessie, вы можете использовать репозитории dotdeb. Отредактируйте свой /etc/apt/sources.list и добавьте следующее:

 deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org Джесси все
 

Затем добавьте ключ dotdeb к своим известным ключам:

 $ wget https://www.dotdeb.org/dotdeb.gpg
$ apt-key добавить dotdeb.gpg
 

Теперь установите необходимые зависимости:

 $ apt-get update
$ apt-get install mysql-server apache2 libapache2-mod-php7.0 php7.0-cli php7.0-apcu php7.0-mcrypt php7.0-intl php7.0-mysql php7.0-curl php7.0- gd php7.0-мыло php7.0-xml php7.0-zip
$ a2enmod rewrite
 

Убедитесь, что PHP7 теперь является вашей текущей версией PHP с:

Конфигурация системы¶

Если вы хотите сохранить PHP 5 в качестве версии PHP по умолчанию, используйте update-alternatives следующим образом:

 $ update-alternatives --config php
 

Теперь вам нужно настроить ограничение памяти PHP7 и часовой пояс как для Apache, так и для CLI.

Установка Apache php.ini файл /etc/php/7.0/apache2/php.ini

 memory_limit = 512 МБ
date.timezone = Etc / UTC
 

Настройка CLI php.ini файл /etc/php/7.0/cli/php.ini

 memory_limit = 768 МБ
date.timezone = Etc / UTC
 

Примечание

Используйте часовой пояс, соответствующий вашему местоположению, например America / Los_Angeles или Europe / Berlin . См. Http://www.php.net/timezones для получения списка всех доступных часовых поясов.

Настройка гибридного хранилища MySQL / MongoDB¶

Если вы используете полное хранилище SQL с MySQL, вам не нужно следовать этому разделу, и все готово.
PIM теперь должен работать 🙂

В противном случае вам нужно будет установить новое расширение Mongo PHP и включить его:

 $ apt-get install php7.0-dev pkg-config
$ pecl установить mongodb
$ echo "extension = mongodb.so" >> /etc/php/7.0/mods-available/mongodb.ini
$ phpenmod mongodb
 

Наконец, как обычный пользователь, вы должны установить адаптер Mongo PHP:

 $ su my_user
$ composer требуется alcaeus / mongo-php-adapter --ignore-platform-reqs
 

Вот и все! Теперь вы можете использовать PIM с PHP7 🙂

.

Руководство по обновлению / установке PHP 7.4 в Ubuntu и Debian • PHP.Watch

PHP 7.4 был выпущен сегодня как раз вовремя для благодарности!

В прошлом году я писал сообщения об обновлении PHP до 7.3, а в предыдущие годы — о других версиях. Пора перейти на PHP 7.4!

ЖУТКОЕ ПРЕДУПРЕЖДЕНИЕ

PHP 7.4 не поддерживает ряд функций, которые могут использоваться вашими существующими приложениями. Хотя это маловероятно, вероятность того, что обновление сломает ваши существующие сайты, отлична от нуля.Перед продолжением убедитесь, что вы сделали надлежащую резервную копию вашего сервера.

1. Добавьте ondrej / php PPA

Благодаря Ондрею у нас есть готовые сборки PHP 7.4 в его PPA. Эти пакеты не являются официальными сборками Ubuntu, но они используются практически в каждом современном стеке Ubuntu, и я не могу рекомендовать их достаточно сильно. Если ваш кошелек позволяет это, я предлагаю вам заплатить за его усилия пожертвованием.

Ubuntu
  sudo add-apt-repository ppa: ondrej / php # При появлении запроса нажмите Enter.sudo apt-get update  
Debian
  sudo apt install apt-transport-https lsb-release ca-сертификаты curl -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb https://packages.sury.org/php/ $ (lsb_release -sc) main"> /etc/apt/sources.list.d/php.list'
sudo apt update  

2. Получите список текущих пакетов PHP.

Если вы выполняете обновление с предыдущей версии PHP, мы не будем принимать во внимание текущие пакеты PHP, которые есть на вашем сервере.Этот список поможет нам определить пакеты, которые мы должны установить для PHP 7.4. Обратите внимание, что PHP больше не связывает некоторые менее используемые расширения, такие как wddx , которые вам нужно будет скомпилировать самостоятельно, если вам это нужно. Посмотрите, что нового и что изменилось в PHP 7.4, чтобы узнать, что удаляется из ядра.

  dpkg -l | grep php | тройник packages.txt  

Это перечислит все пакеты, отфильтрует их для тех, у кого в имени указано php , и запишет их в пакеты .txt в вашем текущем каталоге в дополнение к отображению их на экране.

К этому списку будет удобно обращаться после того, как мы установим PHP 7.4 для установки эквивалентов пакетов PHP 7.4.

3. Установите PHP 7.4

* Тяжело дышит …

PHP 7.4, ядро ​​

  sudo apt install php7.4 php7.4-common php7.4-cli  

Это установка основных бинарных файлов PHP 7.4. После этого у вас будет минимальный установленный PHP.Обратите внимание, что мы еще не установили fpm или любой другой пакет интеграции с сервером

Расширения PHP 7.4

Пришло время для расширений. Если вы выполняете обновление с предыдущей установки, теперь вы можете взглянуть на содержимое файла packages.txt ( cat packages.txt ).

В репозитории PPA / Debian Ондрея пакеты PHP следуют шаблону php7.4-PACKAGE . Например, mbstring находится на php7.4-mbstring и curl находятся по адресу php7.4-mbstring .

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

  sudo apt install php7.4-curl php7.4-mbstring php7.4-bz2 php7.4-readline php7.4-intl  

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

Вот мой рекомендуемый список расширений:

  sudo apt install php7.4-bcmath php7.4-bz2 php7.4-curl php7.4-intl php7.4-mbstring php7.4-mysql php7.4-readline php7.4-xml php7.4-zip`  

PHP уже включает расширения, такие как curl , hash , ctype в ядре.

Интеграция с веб-сервером

Если вы планируете использовать PHP на веб-сервере, вам необходимо интегрировать веб-сервер с PHP. Вы можете использовать два пакета:

Для веб-сервера Nginx или сервера Apache, использующего mod_event MPM, вам потребуется php7.Пакет 4-fpm .
Если вы используете PHP в качестве встроенного модуля Apache (часто плохой вызов), вам понадобится пакет libapache2-mod-php7.4 . Пользователи Apache могут запустить apachectl -V , чтобы получить дополнительную информацию об интеграции с сервером. Если написано prefork , вам нужен пакет libapache2-mod-php7.4 . php7.4-fpm иначе.

Nginx или Apache с событием MPM
  sudo apt установить php7.4-fpm
sudo a2enconf php7.4-fpm # Только для Apache  
Apache с предварительным форком MPM
  sudo apt установить libapache2-mod-php7.4  

3. Протестируйте установку PHP 7.4.

Запустите php -v , чтобы убедиться, что PHP 7.4 (CLI) установлен правильно. Вы можете запустить php -m , чтобы получить список расширений, включенных в вашей установке PHP 7.4.

4. Удалить старые версии PHP

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

  apt purge php7.3 php7.3-common # Измените 7.3 со всеми версиями, которые вы хотите удалить.  

… ааа и все! Теперь у вас должен быть работающий PHP 7.4 с общими пакетами / заменяющими пакетами старой версии. Следите за журналами ошибок на предмет потенциальных несовместимых ошибок в вашем коде.
Я составил список изменений, устаревших, добавленных и удаленных в PHP 7.4.

.

Как установить PHP 7.4 / 7.3 / 7.2 / 7.1 в Debian 10 / Debian 9

PHP — это язык программирования с открытым исходным кодом, используемый для веб-разработки, созданный Расмусом Лердорфом. Это язык сценариев со встроенным HTML для создания динамических веб-сайтов.

В этом посте мы увидим, как установить PHP 7.4 / 7.3 / 7.2 / 7.1 в Debian 10 / Debian 9.

Добавить репозиторий PHP

SURY, сторонний репозиторий, который предлагает PHP 7.4 / 7.3 / 7.2 / 7.1 для операционной системы Debian.

По умолчанию Debian 10 поставляется с PHP v7.3. Итак, вы можете установить PHP v7.3 из репозитория Debian или репозитория SURY. Пропустите этот раздел, если хотите установить PHP 7.3 из репозитория Debian. Однако, если вы хотите установить PHP 7.4 / 7.2 / 7.1 на Debian 10, вы должны настроить репозиторий SURY.

Обновите кеш репозитория.

 sudo apt update 

Установите следующие пакеты.

 sudo apt install -y curl wget gnupg2 ca-Certific lsb-release apt-transport-https 

Импортируйте общедоступную информацию, используя следующие команды.

 wget https://packages.sury.org/php/apt.gpg

sudo apt-key add apt.gpg 

Добавьте репозиторий SURY в вашу систему.

 echo "deb https://packages.sury.org/php/ $ (lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php7.list 

Обновите индекс репозитория.

 sudo apt update 

Установите PHP

Установите PHP 7.4 в Debian 10 / Debian 9

Установите PHP v7.4 с помощью следующей команды.

 sudo apt install -y php7.4 php7.4-cli php7.4-common 

Установите PHP 7.3 в Debian 10 / Debian 9

Установите PHP v7.3 с помощью следующей команды.

 sudo apt install -y php7.3 php7.3-cli php7.3-common 

Установите PHP 7.2 в Debian 10 / Debian 9

Установите PHP v7.2 с помощью следующей команды.

 sudo apt install -y php7.2 php7.2-cli php7.2-common 

Установите PHP 7.1 в Debian 10 / Debian 9

Установите PHP v7.1 с помощью следующей команды.

 sudo apt install -y php7.1 php7.1-cli php7.1-common 

В вашей системе также может быть несколько версий PHP. Каждая версия PHP будет иметь отдельные файлы конфигурации в каталоге /etc/php/7.X.

Установить версию PHP по умолчанию

Вы можете установить версию PHP по умолчанию с помощью следующей команды, если ваша система имеет несколько версий PHP. Измените php7.3 на версию, которую вы хотите установить как версию PHP по умолчанию.

 sudo update-alternatives --set php / usr / bin /  php7.3  

Проверить версию PHP

После установки PHP проверьте версию.

 php -v 

Вывод:

 PHP 7.4.1 (cli) (построено: 18 декабря 2019 15:00:01) (NTS)
Авторские права (c) Группа PHP
Zend Engine v3.4.0, Авторское право (c) Zend Technologies
    с Zend OPcache v7.4.1, Copyright (c), Zend Technologies
 

Поддержка PHP для веб-сервера

И Apache, и Nginx не поддерживают обработку файлов PHP по умолчанию, когда браузер запрашивает страницу PHP. Итак, нам нужно установить пакет PHP на сервер для поддержки файлов PHP.

Поддержка PHP для Apache

Вы можете установить указанный ниже пакет с веб-сервером Apache для поддержки PHP. Этот пакет предоставляет модули PHP для веб-сервера Apache 2. При необходимости измените версию PHP

 sudo apt install -y apache2 libapache2-mod-php7.4 

Поддержка PHP для Ngnix

Nginx не имеет пакета модулей PHP для поддержки PHP. Но мы можем использовать PHP FastCGI Process Manager для обработки запросов PHP. При необходимости измените версию PHP

 sudo apt install -y php7.4-fpm 

После установки менеджера FastCGI добавьте информацию о сокете в виртуальный хост Nginx.

 сервер {

  # другие коды 

  расположение ~ * \ .php $ {
    fastcgi_pass  unix: /run/php/php7.4-fpm.sock ;
    включить fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;
    fastcgi_param SCRIPT_NAME $ fastcgi_script_name;
  }
}
 

Установить расширения PHP

Расширения PHP включают определенные функции / поддержку для вашего кода.Например, установка расширения PHP MySQL позволит вашему PHP-коду подключаться к базе данных MySQL.

Пакет расширений PHP обычно называется php .

Чтобы установить поддержку MySQL для PHP v7.4, вы можете установить пакет php7.4-mysql .

 sudo apt install -y php7.4-mysql 

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

 php -m | grep -i mysql 

Вывод:

 mysqli
  mysqlnd 
pdo_mysql 

Расширения PHP для CMS

Расширения PHP для WordPress

Следующие расширения необходимы для установки и запуска WordPress в вашей системе Debian.WordPress рекомендует для установки использовать PHP v7.3.

 sudo apt install -y php7.3-mysql php7.3-dom php7.3-simplexml php7.3-ssh3 php7.3-xml php7.3-xmlreader php7.3-curl php7.3-exif php7.3 -ftp php7.3-gd php7.3-iconv php7.3-imagick php7.3-json php7.3-mbstring php7.3-posix php7.3-sockets php7.3-tokenizer 

Расширения PHP для Joomla

Следующие расширения необходимы для установки и запуска Joomla в вашей системе Debian. Joomla требует PHP v7.1 и выше.

 sudo apt install -y php7.3-mysql php7.3-xml php-pear php7.3-json 

Расширения PHP для Drupal

Следующие расширения необходимы для установки и запуска Drupal в вашей системе Debian. Drupal требует PHP v7.1 и выше.

 sudo apt install -y php7.3-mysql php7.3-dom php7.3-gd php7.3-json php7.3-pdo php7.3-simplexml php7.3-tokenizer php7.3-xml 

Заключение

Вот и все. Пожалуйста, поделитесь своим мнением в разделе комментариев.

.

PHP 7.0-RC2 доступен для Debian 8 «Jessie» — Dotdeb

4 сентября 2015 года группа PHP опубликовала второго кандидата на выпуск новой основной ветки, PHP 7:

.

PHP 7.0.0 RC 2 содержит исправления для 28 ошибок, о которых сообщалось, 7 из которых связаны с безопасностью, и в целом более 250 коммитов с различными улучшениями.

PHP 7.0.0 поставляется с новой версией Zend Engine с такими функциями, как (неполный список):

  • Повышенная производительность: PHP 7 почти вдвое быстрее, чем PHP 5.6
  • Последовательная поддержка 64-бит
  • Многие фатальные ошибки теперь являются Исключениями
  • Удаление старых и неподдерживаемых SAPI и расширений
  • Нулевой оператор объединения (??)
  • Оператор комбинированного сравнения ()
  • Объявления типа возврата
  • Объявления скалярных типов
  • Анонимные классы

Для получения дополнительной информации о новых функциях и других изменениях вы можете прочитать файл NEWS или файл UPGRADING для получения полного списка примечаний по обновлению.


Теперь я с гордостью сообщаю, что пакеты PHP 7.0-RC2 теперь доступны для Debian 8 «Jessie» на архитектурах amd64 и i386!

Заявление об отказе от ответственности: ЭТО ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР РАЗРАБОТКИ (из исходной версии PHP и с точки зрения упаковки Dotdeb / Debian) — НЕ ИСПОЛЬЗУЙТЕ ЕГО В ПРОИЗВОДСТВЕ!

Что касается Dotdeb, я хотел сделать все правильно и совместимо с тем, что произойдет с Stretch. Таким образом, метод упаковки был синхронизирован с методом Сида с точки зрения именования и управления версиями (еще раз, спасибо сопровождающим Debian за их потрясающую работу! ).Это означает, что:

  • Пакеты SAPI (Apache2, FPM, CLI, CGI, Embed…) собираются как обычно из исходного кода и называются php7.0- * вместо php7- *.
  • Это новое соглашение об именах и метод упаковки упростят создание будущих пакетов php7.x- *. И вы даже можете установить несколько версий PHP на один сервер без каких-либо конфликтов!
  • Основные модули PHP (GD, MySQL, mbstring…) теперь собираются из пакета php7.0-modules-source и называются php- *.Убедитесь, что вы выбрали правильные.
  • Все эти пакеты созданы с использованием git-buildpackage и Jenkins.
  • Пакеты расширений PECL отсутствуют и требуют доработки (скрипты еще не готовы).
  • Поточно-ориентированная версия всех этих пакетов будет опубликована после того, как все будет объявлено стабильным и готовым к эксплуатации.

Еще раз, эти первые пакеты следует рассматривать как предварительный просмотр:

  • Пока не обновляйте какие-либо промежуточные / производственные / критические среды и используйте эти пакеты RC на свой страх и риск!
  • Убедитесь, что вы понимаете указанные выше изменения PHP / Debian / Dotdeb и что вам не нужны какие-либо недостающие функции / пакеты.
  • Мы всегда рады вашим отзывам.Просто убедитесь, что они полезны.

Эти пакеты были опубликованы в основном репозитории для Jessie, потому что у них новые имена, и они не должны конфликтовать с какой-либо установкой PHP5. Итак, чтобы протестировать PHP 7.0-RC2, просто следуйте инструкциям.

И как обычно, не стесняйтесь оказывать поддержку…

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *