Skip to main content

Установка Apache+PHP-FMP 8.2 (Debian/Ubuntu)

Установка Apache:

sudo apt install apache2

Редактирование опции <Directory /var/www/> в /etc/apache2/apache2.conf:

<Directory /var/www/>
Options Indexes ExecCGI FollowSymLinks
AllowOverride All
Require all granted
</Directory>

Установка пакетов PHP, в данном случае используется версия 8.1, но можно использовать любую другую по желанию, просто замените циферки 8.1 на нужные вам:

sudo apt install php8.1-php-fpm php8.1-php-gd php8.1-php-mbstring php8.1-php-mysql php8.1-php-zip php8.1-php-memcached memcached

Включение нужных сервисов, PHP-FPM и кэширования:

sudo systemctl enable php8.1-2-fpm && sudo systemctl enable memcached

Замена модуля mpm_event на mpm_prefork:

sudo a2dismod mpm_event && sudo a2enmod mpm_prefork

Активация модуля PHP-FPM:

sudo a2enconf php8.1-2-fpm

Установка библиотеки libapache2-mod-fcgid для обмена данными для Apache HTTP и PHP:

sudo apt install libapache2-mod-fcgid

Активация модуля proxy и proxy_fcgi:

sudo a2enmod proxy && sudo a2enmod proxy_fcgi

Добавим в конфигурационный файл /etc/apache2/mods-available/dir.conf index.php в самое начало, должно получиться

DirectoryIndex index.php index.html index.cgi index.pl index.php index.xhtml index.htm

Проверка конфигурации:

sudo apachectl configtest

Output

Syntax OK

Для установки часового пояса в настройках PHP следует найти параметр date.timezone, раскомментировать и указать значение:

sudo nano /etc/php/8.1/2/fpm/php.ini

Перезапуск PHP-FPM и Apache:

sudo systemctl restart php8.1-fpm && sudo systemctl restart apache2