Установка Apache-itk и PHP на Centos 9

Установка Midnight Commander для удобства

sudo dnf install mc

Установка Apache:

subo dnf install httpd

Установка модуля SSL:

subo dnf install mod_ssl

Установка MPM-ITK пакета от Centos 8:

subo dnf install https://disweb.ru/files/rpm/httpd-itk-2.4.7.04-31.el8.x86_64.rpm

Редактируем /etc/sysconfig/httpd и добавляем:

HTTPD=/usr/sbin/httpd.itk

Открыть файл /etc/httpd/conf.modules.d/00-mpm.conf и раскоментировать:

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

и закомментировать:

LoadModule mpm_event_module modules/mod_mpm_event.so

Открыть файл /etc/httpd/conf.modules.d/01-mpm-itk.conf и раскоментировать:

<IfModule mpm_prefork_module>
    LoadModule mpm_itk_module modules/mod_mpm_itk.so
</IfModule>

Открыть на редактирование /etc/httpd/conf/httpd.conf и добавить:

<IfModule itk.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

StartServers — устанавливает число дочерних процессов сервера при запуске;
MinSpareServers — задает минимальное число свободных процессов;
MaxSpareServers — устанавливает после скольки процессов лишние будут завершаться.;
ServerLimit — верхний предел установленного количества процессов;
MaxClients — максимальное количество соединений, которые будут обрабатываться одновременно;
MaxRequestsPerChild — лимит запросов дочернего процесса. После превышения процесс умирает.

Открыть файл /etc/httpd/conf.d/mod_deflate.conf  и добавить (Включение сжатия):

<filesMatch "\.(js|html|css|svg)$">
SetOutputFilter DEFLATE
</filesMatch>

AddOutputFilterByType DEFLATE text/html application/xhtml+xml text/plain text/xml text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent env=!dont-vary

Открыть порты 80 и 433:

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload

Создаем виртуальный хост в папке /etc/httpd/conf.d

mcedit /etc/httpd/conf.d/имя_вашего_домена.ru.conf

Добавляем в него запись:

<VirtualHost *:80>
ServerName site.ru
ServerAlias www.site.ru
AssignUserID user user
DocumentRoot /home/site.ru/www/
ScriptAlias /cgi-bin/ "/home/site.ru/www/cgi-bin/"
ErrorLog /home/site.ru/log/errors
CustomLog /home/site.ru/log/access combined
AddType application/x-httpd-php .php .php3 .php4 .php5 .phtml
AddType application/x-httpd-php-source .phps
<Directory "/home/site.ru/www/">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

VirtualHost — на любом интерфейсе с 80 портом, если у вас используется защищенное соединение то указываете 443 порт

AssignUserID — укажите пользователя от которого будет работать Apache с данным сайтом

При включеном SELinux установить файлам chcon:

chcon -R unconfined_u:object_r:httpd_sys_content_t:s0 .

Добавить апач в автозагрузку и запустить:

systemctl enable httpd.service
systemctl start httpd.service

Установка репозитория EPEL:

dnf install epel-release

Установка репозитория REMI:

dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm

Указать версию PHP для установки:

yum module enable php:remi-7.4

Для PHP 7.3 необходим пакет libedit-devel:

dnf --enablerepo=PowerTools install libedit-devel

Установка PHP:

dnf install php php-gd  php-mbstring php-mysql php-pdo php-xml php-process php-mcrypt php-pear php-opcache php-ldap php-intl php-soap php-imap php-devel php-bcmath php-pecl-zip

Открыть файл /etc/php.ini и привети параметры к данным:

date.timezone = "Europe/Moscow"
short_open_tag = On
upload_max_filesize = 128M // Максимальный размер загружаемого файла
post_max_size = 128M // Максимальный размер POST
max_input_vars = 1000000
session.gc_maxlifetime = 86400
memory_limit = // ОЗУ

Открыть файл /etc/httpd/conf.modules.d/10-php.conf и привести к такому виду:

<IfModule prefork.c>
  LoadModule php7_module modules/libphp7.so
</IfModule>

<IfModule !prefork.c>
  LoadModule php7_module modules/libphp7-zts.so
</IfModule>

Перезапускаем вебсервер:

systemctl start httpd.service
Micro
Author: Micro

///

Поделиться в социальных сетях
0 0 голоса
Рейтинг статьи
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии