我是服务器配置领域的新手。在工作中,我们想使用 Apache Archiva 设置一个 Maven 存储库,基本上我们想要一个存储我们创建的 Maven 项目的地方。我能够在 localhost 上运行 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://localhost:8080/ ”行中缺少空格(否则您的服务器将无法启动),您只需要“SSLProxyEngine On”代理到https ,但你正在对 http 进行 pryxing,所以你不需要这个。删除此指令并重试,它应该可以工作。
您也不需要 <Proxy http://localhost:8080 > 块。这些类型的块(几乎)专门用于配置正向代理,而您有一个反向代理。它们在互联网上的各种“指南”中很常见,但它们不是必需的。