Краткое руководство по быстрому запуску веб-сервера Angie (форка nginx) в связке с PHP и СУБД MariaDB или PostgreSQL на ОС CentOS 7.9
Установка СУБД
Для установки требуемой СУБД можно воспользоваться инструкциями:
Установка MariaDB — https://mariadb.org/download/?t=repo-config&d=CentOS+7&v=11.2&r_m=truenetwork
Установка PostgreSQL — https://dondub.com/2023/05/ustanovka-postgresql-15-na-centos-7/
Установка Angie
В первую очередь установим epel-release
# yum install epel-release
Затем создадим файл репозитория /etc/yum.repos.d/angie.repo и в нём пропишем:
[angie] name=Angie repo baseurl=https://download.angie.software/angie/centos/$releasever/ gpgcheck=1 enabled=1 gpgkey=https://angie.software/keys/angie-signing.gpg.asc
Обновим все репозитории
# yum update
и установим Angie
# yum install angie pcre2 -y
Далее откроем порт http в файрволле
# firewall-cmd --add-service=http --zone=public --permanent # firewall-cmd --reload
Также при необходимости установим модули Angie
# yum install angie-module-image-filter angie-module-perl angie-module-xslt angie-module-upload angie-module-zip
После этого запустим службу Angie и включим её в автозагрузку
# systemctl start angie # systemctl enable angie
Теперь на другой машине в сети открываем браузер и в адресной строке пропишем http://IP-адрес-сервера/ и увидим экран приветствия Angie. Он будет выглядеть примерно также, как у nginx.
Источник: https://angie.software/install/#install-yum
Установка PHP и расширений
Установим репозитории remi
# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
а также yum-utils
# yum install yum-utils
Теперь посмотрим, какие версии PHP нам доступны
# ls /etc/yum.repos.d/remi-*
Выбираем необходимую (например 8.3) и включаем этот репозиторий
# yum-config-manager --enable remi-php83
Теперь можем устанавливать PHP с расширениями
# yum install php83 php83-php-common php83-php-gd php83-php-xml php83-php-pgsql php83-php-mysqlnd php83-php-mbstring php83-php-fpm
Затем открываем /etc/opt/remi/php83/php.ini, в нём находим закомментированный параметр
;cgi.fix_pathinfo=1
и ниже допишем
cgi.fix_pathinfo=0
в файле /etc/opt/remi/php83/php-fpm.d/www.conf необходимо
- исправить:
user = angie group = angie
- раскомментировать и исправить:
listen.owner = angie listen.group = angie listen = /run/php-fpm.sock
После этого запускаем службу php83-php-fpm и включаем её в автозагрузку
# systemctl start php83-php-fpm # systemctl enable php83-php-fpm
Конфигурирование Angie для PHP
Делаем бэкап файла /etc/angie/http.d/default.conf на всякий случай
# 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$ { root /usr/share/angie/html; fastcgi_pass unix:/run/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
После этого перезапустим angie
# systemctl restart angie
Готово.
Теперь проверяем. Создадим файл /usr/share/angie/html/info.php, откроем его и пропишем такие строки:
<?php phpinfo(); ?>
После этого на другой машине в сети открываем браузер и в адресной строке пропишем http://IP-адрес-сервера/info.php и увидим информацию об установленной PHP и его расширениях.