Выбираем 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 сервера — должна появиться страница, выглядящая примерно так:
![](http://habrastorage.org/getpro/habr/post_images/3b6/656/214/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 — конфигурация сайта.
<VirtualHost *:80> ServerName cachesys DocumentRoot "/InterSystems/Cache/csp" ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined LogLevel debug <Location /> CSP On SetHandler csp-handler-sa </Location> <Location "/csp/bin/Systems/"> SetHandler csp-handler-sa </Location> <Location "/csp/bin/RunTime/"> SetHandler csp-handler-sa </Location> DirectoryIndex index.csp index.php index.html index.htm </VirtualHost>
Перезапускаем Apache:
service apache2 restart
Теперь по адресу http://<ip>/csp/sys/UtilHome.csp должен открываться портал управления системой:
![](http://habrastorage.org/getpro/habr/post_images/9f5/400/cfa/9f5400cfaf20b7b7e7f9a369533a700f.png)
SSL
Далее добавим возможность подключаться используя ssl. Для этого сгенерируем сертификат сервера, подпишем его сами (не рекомендуется) или у CA. Очень подробный гайд здесь или здесь
В итоге, у нас есть 3 файла: приватный ключ сервера, сертификат сервера и сертификат CA.
Добавляем модуль ssl в Apache:
a2enmod ssl
Создаем файл с конфигурацией сайта: etc/apache2/sites-enabled/001-ssl.conf и добавляем в него:
<IfModule mod_ssl.c> <VirtualHost _default_:443> ServerName <Server Certificate commonName> DocumentRoot /InterSystems/Cache/csp ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Location /> CSP On SetHandler csp-handler-sa </Location> <Location "/csp/bin/Systems/"> SetHandler csp-handler-sa </Location> <Location "/csp/bin/RunTime/"> SetHandler csp-handler-sa </Location> 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 </VirtualHost> </IfModule>
Server Name должно соответствовать параметру commonName в сертификате сервера, также нужно указать корректные пути файлов ключа сервера, сертификата сервера и сертификата CA — SSLCertificateKeyFile, SSLCertificateFile, SSLCACertificateFile соответственно.
Перезапускаем Apache:
service apache2 restart
Теперь по адресу https://<ip>/csp/sys/UtilHome.csp должен открываться портал управления системой:
![](http://habrastorage.org/getpro/habr/post_images/e60/546/f95/e60546f953a19f293c798eb3c3caf9b5.png)
Полезные ссылки
Файлы конфигурации Apache
Документация Caché
Caché и Apache
Caché и SSL
ссылка на оригинал статьи http://habrahabr.ru/company/intersystems/blog/220425/
Добавить комментарий