Настройка доступа по HTTPS
Для организации зашифрованного соединения сперва необходимо получить SSL-сертификат на домен, либо сгенерировать самостоятельно самоподписной сертификат. Полученные в результате файлы необходимо загрузить на сервер и использовать при настройке Apache.
Настройка Apache
Убедимся, что подключен модуль SSL:
a2enmod ssl
При необходимости, в конфигурационном файле Apache /etc/apache2/ports.conf открываем порт подключения по протоколу https:
Listen 80
Listen 443
В конфигурационном файле сайта приложения (например, /etc/apache2/sites-available/devprom.conf) меняем порт для виртуального каталога с 80 на 443 и добавляем в конце параметры для использования SSL:
<VirtualHost *:443>
...
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLCertificateFile /home/devprom/crt/STAR_devprom_ru.crt
SSLCertificateKeyFile /home/devprom/crt/devprom.key
SSLCertificateChainFile /home/devprom/crt/STAR_devprom_ru.ca-bundle
</VirtualHost>
В этом примере используется ChainFile, то есть цепочка сертификатов верхнего уровня. Если провайдер SSL-сертификата такой файл не предоставил, то вы сможете его создать самостоятельно - в него нужно просто скопировать сертификаты в обратном порядке.
Убедитесь, что у пользователя www-data (или apache) есть права на чтения файлов ключа и сертификаторв.
Чтобы перенаправлять все запросы с порта 80 на порт 443, можно использовать такую дополнительную настройку:
<VirtualHost *:80>
ServerName <имя-сайта>
DocumentRoot /var/www/devprom/htdocs
Redirect permanent / https://<имя-сайта>/
</VirtualHost>
После настройки Apache необходимо перезагрузить.
Настройка приложения
Чтобы приложение генерировало корректные ссылки для доступа к проектным артефактам, необходимо сообщить ему, что использутся HTTPS.
Для этого необходимо перейти в административный раздел, в меню Настройки - Приложение. На форме в поле "Порт подключения" необходимо ввести 443 и сохранить настройки.
Настройка внешних ссылок
Отрисовка математических формул и UML-моделей осуществляется дополнительными компонентами (или сервисами). Чтобы использовать https, измените следующие параметры в файле htdocs/settings_server.php
define('PLANTUML_SERVER_URL', 'https://plantuml.myalm.ru');
define('MATH_JAX_LIB_SRC', 'https://myalm.ru:88/mathjax/MathJax.js?config=TeX-AMS_HTML');