Установка и настройка Apache2 на Astra Linux

В данной статье приведен пример установки и настройки HTTP-сервера Apache на OC Astra Linux. Если в ОС уже настроен виртуальный дисплей xvfb, то подготовка системы не требуется и можно перейти сразу к установке Apache2.

Подготовка системы

Выполните следующие действия:

  1. Разрешите доступ к DISPLAY 0.0. Для этого откройте файл X0.hosts, выполнив в терминале команду:

sudo nano /etc/X0.hosts

В открывшемся файле добавьте строку:

localhost

Примечание. Если у вас физический дисплей настроен на другой номер, то после X необходимо указать соответствующую цифру.

  1. Откройте конфигурационный файл xserverrc:

sudo nano /etc/X11/xinit/xserverrc

Замените строку:

exec /usr/bin/X -nolisten tcp "$@"

на:

exec /usr/bin/X "$@"

  1. Откройте конфигурационный файл fly-dmrc:

sudo nano /etc/X11/fly-dm/fly-dmrc

Замените строку:

ServerArgsLocal=-nolisten tcp

на:

ServerArgsLocal=

  1. Перезапустите X-сервер:

sudo service fly-dm restart

После перезагрузки X-сервера запустите его заново командой startx и авторизуйтесь. Для корректной работы сервисов должен быть произведён вход пользователем в графическое окружение системы из физической консоли.

Установка и настройка Apache2

В стандартной поставке Astra Linux, Apache2 доступен только в конфигурации prefork. В связи с этим, для Astra Linux используется Apache2 собственной сборки, собранный с модулем coworker. Apache HTTP Server поставляется с архивом платформы и распаковывается в каталог /opt/prognoz/R81/bin/apache/2.2.

Примечание. При смене каталога расположения Apache HTTP Server надо изменить в файле conf/httpd.conf значения параметров ServerRoot, DocumentRoot, Directory и ScriptAlias, где указан путь до /opt/prognoz/R81/bin/apache/2.2, на соответствующий новому расположению веб-сервера.

  1. Перенесите init-файл apache2prognoz в каталог /etc/init.d/ командами в терминале:

sudo cp /opt/prognoz/R81/bin/apache/2.2/apache2prognoz /etc/init.d/

sudo chmod +x /etc/init.d/apache2prognoz

init-файл запуска Apache2 можно создать вручную, вставив листинг скрипта ниже в файл /etc/init.d/apache2prognoz. Откройте файл для редактирования:

sudo juffed /etc/init.d/apache2prognoz

Вставьте текст скрипта и сохраните файл apache2prognoz:
Скрипт

Выполните команду для разрешения запуска скрипта:

sudo chmod +x /etc/init.d/apache2prognoz

  1. Создайте пустой файл /opt/prognoz/R81/bin/apache/2.2/conf/extra/prognoz.conf:

sudo touch /opt/prognoz/R81/bin/apache/2.2/conf/extra/prognoz.conf

Откройте конфигурационный файл prognoz.conf:

sudo juffed /opt/prognoz/R81/bin/apache/2.2/conf/extra/prognoz.conf

Добавьте строки:

# Prognoz Platform

LoadModule axis2_module "/opt/prognoz/<версия Prognoz Platform>/bin/libmod_axis2_2_2.so"

Axis2RepoPath "/opt/prognoz/<версия Prognoz Platform>/bin"

Axis2LogFile "/opt/prognoz/<версия Prognoz Platform>/bin/logs/axis2.log"

Axis2LogLevel info

Axis2ServiceURLPrefix services

Axis2MaxLogFileSize 100

<Location /axis2>

    SetHandler axis2_module

</Location>

  1. Откройте конфигурационный файл httpd-mpm.conf:

sudo juffed /opt/prognoz/R81/bin/apache/2.2/conf/extra/httpd-mpm.conf

В конец файла добавьте строки:

<IfModule mpm_coworker_module>

ServerLimit 1

StartServers 1

MaxClients 64

MinSpareThreads 32

MaxSpareThreads 64

ThreadsPerChild 64

MaxRequestsPerChild  0

</IfModule>

  1. Откройте конфигурационный файл httpd.conf:

sudo juffed /opt/prognoz/R81/bin/apache/2.2/conf/httpd.conf

Исправьте строки:

Listen 80

User daemon

Group daemon

на:

Listen 81

User www-data

Group www-data

В конец файла добавьте строки, указав собственное значение параметра ServerName, совпадающее с сетевым именем компьютера:

ServerName astralinux

Include conf/extra/httpd-mpm.conf

Include conf/extra/prognoz.conf

  1. Создайте символьную ссылку на ~/.Xauthority в каталоге, где установлен Prognoz Platform 8, /opt/prognoz/<версия Prognoz Platform>/bin:

sudo ln -s /home/prognoz/.Xauthority /opt/prognoz/<версия Prognoz Platform>/bin/.Xauthority

  1. Откройте конфигурационный файл envvars:

sudo juffed /opt/prognoz/R81/bin/apache/2.2/bin/envvars

В конец файла добавить строки:

export TNS_ADMIN=/opt/prognoz/<версия Prognoz Platform>/bin

export DISPLAY=:987

export XAUTHORITY=/opt/prognoz/<версия Prognoz Platform>/bin/.Xauthority

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/prognoz/<версия Prognoz Platform>/bin

Примечание. В переменной окружения DISPLAY указывается номер дисплейного сервера, на котором будет отрисовываться графика. Рекомендуется использовать виртуальный дисплей xvfb под номером 987, но если используется физический X-сервер, то укажите его номер DISPLAY=:0.0.

  1. Установите владельцем каталога с установленным Prognoz Platform 8 пользователя, под которым запущен Apache2:

sudo chown -R www-data:www-data /opt/prognoz

  1. Запустите Apache2, выполнив в терминале:

sudo /etc/init.d/apache2prognoz start

sudo update-rc.d apache2prognoz defaults

  1. Проверьте работу BI-сервера, запущенного под HTTP-сервером Apache, для этого в браузере перейдите по ссылке http://localhost:81/axis2/services/. Должна открыться страница со списком операций BI-сервера (см. раздел «Проверка работы BI-сервера»).