Стек Angie + PHP + MariaDB/PostgreSQL на Astra Linux SE

Краткая инструкция по быстрому запуску веб-сервера Angie (форка nginx) в связке с PHP и СУБД MariaDB или PostgreSQL на ОС Astra Linux SE 1.7.5 на примере редакции «Воронеж»

Установка Angie

В первую очередь установим ca-certificates, curl и lsb-release

# sudo apt install -y ca-certificates curl lsb-release

Затем добавим цифровую подпись angie-signing

# sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg https://angie.software/keys/angie-signing.gpg

Создадим файл с репозиторием

# echo "deb https://download.angie.software/angie/astra-se/$(egrep -o '[0-9]+.[0-9]+' /etc/astra_version) unstable main" | sudo tee /etc/apt/sources.list.d/angie.list > /dev/null

и обновим репозитории

# sudo apt update

После этого установим angie-digsig-key

# sudo apt install -y angie-digsig-key

и модифицируем загрузку

# sudo update-initramfs -uk all

Далее перезагрузим машину

# sudo shutdown -r now

и установим Angie

# sudo apt install -y angie

а также модули при необходимости

# sudo apt install angie-module-image-filter angie-module-perl angie-module-xslt angie-module-upload angie-module-zip

Затем включим службу angie в автозагрузку

# sudo systemctl enable angie

Установка СУБД

Для установки требуемой СУБД можно воспользоваться инструкциями (также, как и в Debian):

Установка MariaDB — https://dondub.com/2021/05/zapusk-subd-mariadb-na-debian-10-9-i-ubuntu-server-21-04/

Установка PostgreSQL — https://dondub.com/2021/05/zapusk-subd-postgresql-v-debian-10-9/

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

Установим PHP версии 7.3 и необходимые расширения

# sudo apt install php php-common php-gd php-pgsql php-xml php-mbstring php-fpm

и сразу же отключим службу apache2

# sudo systemctl stop apache2
# sudo systemctl disable apache2

Далее проверим статус службы php8.2-fpm

# systemctl status php7.3-fpm

Конфигурирование Angie для PHP

В файле /etc/angie/angie.conf необходимо закомментировать строку

# user angie;

и вставить ниже

user www-data;

это важно, иначе php покажет ошибку.

Делаем бэкап файла /etc/angie/http.d/default.conf на всякий случай

# sudo cp /etc/angie/http.d/default.conf /etc/angie/http.d/default.conf.old

Теперь открываем файл конфигурации angie /etc/angie/http.d/default.conf, находим секцию location ~ .php$ { … } и приведём её к такому виду:

    location ~ \.php$ {
        try_files      $uri =404;
        root           /usr/share/angie/html;
        fastcgi_pass   unix:/run/php/php7.3-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

После этого в файле /etc/php/7.3/fpm/php.ini находим закомментированную строку

;cgi.fix_pathinfo=1

и ниже вставим

cgi.fix_pathinfo=0

Затем перезагрузим службы php7.3-fpm и angie

# sudo systemctl restart php7.3-fpm
# sudo systemctl restart angie

Готово.

Теперь проверяем. Создадим файл /usr/share/angie/html/info.php, откроем его и пропишем такие строки:

<?php
    phpinfo();
?>

После этого на другой машине в сети открываем браузер и в адресной строке пропишем http://IP-адрес-сервера/info.php и увидим информацию об установленной PHP и его расширениях.

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

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