Настройка Apache для работы с СУБД Caché на Linux

Вообще говоря, в поставку InterSystems Caché входит встроенный веб-сервер Apache. Встроенный сервер предназначен для разработки и администрирования инстанса Caché и собран с некоторыми ограничениями. Существуют рецепты по устранению этих ограничений, но более общий подход — использовать для продакшена полноценный веб-сервер. В статье рассмотрена настройка Apache для работы с Caché и организация https доступа. Все действия выполнялись на Ubuntu, но настройка на других Linux дистрибутивах ничем принципиально не отличается.Выбираем Apache Считаем, что Caché у вас уже установлена в каталог /InterSystems/Cache (как установить Caché на Linux читаем здесь).Caché поставляется вместе с модулем для Apache, идём в папку /InterSystems/Cache/csp/bin и находим там один из файлов модулей: CSPa22.so (Apache Version 2.2.x) CSPa24.so (Apache Version 2.4.x) CSPa20.so (Apache Version 2.0.x) CSPa.so (Apache Version 1.3.x) Теперь нужно установить Apache. Ищем подходящий репозиторий на сайте, например для CSPa24.so нужна любая версия 2.4.x, а репозиторий http://ru.archive.ubuntu.com/ubuntu/ saucy main содержит Apache версии 2.4.6. Добавляем его в лист репозиториев: nano /etc/apt/sources.list deb http://ru.archive.ubuntu.com/ubuntu/ saucy main Обновляем список пакетов: apt-get update Установка Apache Устанавливаем Apache, для этого добавляем необходимые пакеты: apt-get install apache2 zlib1g-dev После установки убедитесь, что установленная версия Apache соответствует ожиданиям: apache2 -v Также надо убедиться, что в списке модулей Apache есть mod_so, список модулей выводится с помощью: apache2 -l Итак, Apache установлен и работает. Для проверки наберите в адресной строке браузера ip сервера — должна появиться страница, выглядящая примерно так: 3b6656214957bad172415abf6b7ed68f.png Соединяем Caché и Apache Для это нам нужно изменить конфигурацию Apache. Редактируем файлы:/etc/apache2/envvars — содержит переменные окружения. Устанавливаем значения переменных APACHE_RUN_USER и APACHE_RUN_GROUP равными cacheusr /etc/apache2/apache2.conf — основной файл конфигурации. Добавляем строчки в разделе конфигурации модулей (module configuration) CSPModulePath /InterSystems/Cache/csp/bin/ LoadModule csp_module_sa /InterSystems/Cache/csp/bin/CSPa24.so AddHandler csp-handler-sa csp cls cxw zen /etc/apache2/sites-enabled/000-default.conf — конфигурация сайта. ServerName cachesys DocumentRoot »/InterSystems/Cache/csp» ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined LogLevel debug CSP On SetHandler csp-handler-sa SetHandler csp-handler-sa SetHandler csp-handler-sa DirectoryIndex index.csp index.php index.html index.htm Перезапускаем Apache: service apache2 restart Теперь по адресу http:///csp/sys/UtilHome.csp должен открываться портал управления системой: 9f5400cfaf20b7b7e7f9a369533a700f.png SSL Далее добавим возможность подключаться используя ssl. Для этого сгенерируем сертификат сервера, подпишем его сами (не рекомендуется) или у CA. Очень подробный гайд здесь или здесьВ итоге, у нас есть 3 файла: приватный ключ сервера, сертификат сервера и сертификат CA.Добавляем модуль ssl в Apache: a2enmod ssl Создаем файл с конфигурацией сайта: etc/apache2/sites-enabled/001-ssl.conf и добавляем в него: ServerName DocumentRoot /InterSystems/Cache/csp ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined CSP On SetHandler csp-handler-sa SetHandler csp-handler-sa SetHandler csp-handler-sa DirectoryIndex index.csp index.php index.html index.htm

SSLEngine on SSLCertificateKeyFile /InterSystems/Cache/mgr/SSLcert/server_key.pem SSLCertificateFile /InterSystems/Cache/mgr/SSLcert/server_crt.crt SSLCACertificateFile /InterSystems/Cache/mgr/SSLcert/cacert.crt SSLVerifyDepth 10 SSLCipherSuite TLSv1: SSLv3:! ADH:! LOW:! EXP:@STRENGTH SSLOptions +StdEnvVars DirectoryIndex index.csp index.php index.html index.htm Server Name должно соответствовать параметру commonName в сертификате сервера, также нужно указать корректные пути файлов ключа сервера, сертификата сервера и сертификата CA — SSLCertificateKeyFile, SSLCertificateFile, SSLCACertificateFile соответственно.Перезапускаем Apache: service apache2 restart Теперь по адресу https:///csp/sys/UtilHome.csp должен открываться портал управления системой: e60546f953a19f293c798eb3c3caf9b5.png Полезные ссылки Файлы конфигурации ApacheДокументация CachéCaché и ApacheCaché и SSL

© Habrahabr.ru