Назад | Перейти на главную страницу

Apache Archiva с ssl-прокси

Я новичок в настройке серверов. На работе мы хотим настроить репозиторий Maven с Apache Archiva, в основном нам нужно место, где хранятся проекты Maven, которые мы создаем. Я могу запустить Archiva на локальном хосте и получить к нему доступ через http. Чтобы иметь доступ к репозиторию через SSL, мы хотели настроить Apache для работы в качестве прокси-сервера SSL, я следовал многим руководствам (например, https://stackoverflow.com/questions/30871001/how-to-setup-apache-archiva-to-use-https-instead-of-http) о том, как это сделать, но ответ, который я получаю, когда пытаюсь подключиться через https:

Ошибка при подключении к server_ip: 8080. SSL получил запись, длина которой превышает максимально допустимую. Код ошибки: SSL_ERROR_RX_RECORD_TOO_LONG

Конфигурация моего виртуального хоста выглядит так:

Listen 8081
<VirtualHost *:8081>
    ServerName server_ip
    ProxyRequests Off
    <Proxy http://localhost:8080>
        Order allow,deny
        Allow from all
    </Proxy>
    ProxyPreserveHost On
    SSLEngine On
    SSLProxyEngine On
    SSLCertificateFile /path_to_cert
    SSLCertificateKeyFile /path_to_key
    ProxyPass /http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/
</VirtualHost>

Как я могу решить проблему?

Кроме пропущенного пробела в строке «ProxyPass /http: // локальный: 8080 /"что, как я полагаю, является ошибкой копирования / вставки (иначе сервер не запустился бы), вам нужно только" SSLProxyEngine On "при проксировании к https, но вы подключаетесь к http, поэтому вам это не нужно. Удалите эту директиву и повторите попытку, она должна работать.

Также вам не нужен <Прокси-сервер http: // локальный: 8080 > блок. Подобные блоки предназначены (почти) исключительно для настройки прокси-серверов прямого доступа, тогда как у вас есть обратный прокси-сервер. Они очень часто встречаются в различных «путеводителях» в Интернете, но в них нет необходимости.