DEB
Подготовка к обновлению
Если Пассворк установлен в облачной/виртуальной среде, создайте снимок для восстановления работоспособности в случае некорректного обновления PHP
Получить права root и обновить локальную базу данных пакетов:
- shell
sudo -i
apt-get update
Удаление PHP
Отключить модуль для Apache2:
- shell
a2dismod php8.2
Удалить основной пакет, драйверы и расширения PHP:
- shell
apt purge -y php8.2*
Очистить систему от зависимостей:
- shell
apt autoremove -y --purge
Установка PHP
Установить PHP с расширениями и драйверами:
- shell
apt-get install -y php8.2 php8.2-dev php8.2-ldap php8.2-xml php8.2-bcmath php8.2-mbstring php8.2-xml php8.2-curl php8.2-opcache php8.2-readline php8.2-zip
Установка драйвера PHP MongoDB
Установить драйвер PHP MongoDB:
apt install php8.2-mongodb -y
Создать файлы конфигурации для загрузки и включения PHP MongoDB:
echo "extension=mongodb.so" | tee /etc/php/8.2/apache2/conf.d/20-mongodb.ini
echo "extension=mongodb.so" | tee /etc/php/8.2/cli/conf.d/20-mongodb.ini
Установка расширения PHP Phalcon
Установить расширение PHP Phalcon:
mkdir /tmp/install && cd /tmp/install && curl -LOf https://github.com/phalcon/cphalcon/releases/download/v5.3.1/phalcon-php8.2-nts-ubuntu-gcc-x64.zip && unzip phalcon-php8.2-nts-ubuntu-gcc-x64.zip && cp phalcon.so /usr/lib/php/20220829 && cd / && rm -rf /tmp/install
Создать файлы конфигурации для загрузки и включения PHP Phalcon:
echo "extension=phalcon.so" | tee /etc/php/8.2/apache2/conf.d/30-phalcon.ini
echo "extension=phalcon.so" | tee /etc/php/8.2/cli/conf.d/30-phalcon.ini
Принудительно включить PHP для Apache2 и переключить альтернативную версию для исполняемых файлов:
- shell
a2enmod php8.2
update-alternatives --set php /usr/bin/php8.2
update-alternatives --set phar /usr/bin/phar8.2
update-alternatives --set phar.phar /usr/bin/phar.phar8.2
Если используется HTTPS-подключение к Пассворку, необходимо отредактировать конфигурационный файл /etc/php/8.2/apache2/php.ini
, а именно строку — session.cookie_secure = *→ session.cookie_secure = 1
- shell
sed -i '/session.cookie_secure =/c session.cookie_secure = On' /etc/php/8.2/cli/php.ini
Перезапустить слу жбу веб-сервера:
- shell
systemctl restart apache2.service