I have setup both archiva
and httpd
on Ubuntu 22.04
for testing.
Apache Archiva version: 2.2.9
Apache HTTP Server: 2.4.52
The VirtualHost configuration:
<VirtualHost _default_:443>
ProxyPass "/test/" "http://192.168.1.1:8080/"
ProxyPassReverse "/test/" "http://192.168.1.1:8080/"
</VirtualHost>
HTTP Server URL: https://my.example.com/test/
Archiva Server URL: http://192.168.1.1:8080/
When using Firefox to open the http://192.168.1.1:8080/ directly, then the whole Archiva UI can show up normally.
When using Firefox to open the https://my.example.com/test/, Firefox can show the title
as "Apache Archiva
" but the Web Content not showing up, it only shows the "Loading
"...
What's missing in the VirtualHost
for making the Archiva
to work with Reverse Proxy
?
Update: Here is the view source from Firefox:
view-source:https://my.example.com/test/
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="css/jquery.fileupload-ui.css"/>
<link rel="stylesheet" href="css/jqueryFileTree.css"/>
<link rel="stylesheet" href="css/jquery-ui-1.9.2.custom.min.css"/>
<link rel="stylesheet" href="css/select2-3.2.css"/>
<link rel="stylesheet" href="css/typeahead.js-bootstrap.0.9.3.css"/>
<link rel="stylesheet" href="css/bootstrap.2.2.2.css">
<link rel="stylesheet" href="css/archiva.css">
<link rel="shortcut icon" href="favicon.ico"/>
<link rel="stylesheet" href="css/prettify.css"/>
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.10.4.min.js"></script>
<script type="text/javascript" src="js/sammy.0.7.4.js"></script>
<script type="text/javascript" data-main="js/archiva/archiva.js" src="js/require.min.2.1.11.js"></script>
<title>Apache Archiva</title>
</head>
...
view-source:https://my.example.com/test/js/archiva/archiva.js
requirejs(['jquery','jquery.tmpl','jquery.ui','i18n','sammy','startup','utils','domReady!','archiva.main','archiva.cookie-information'], function () {
loadi18n(function () {
$.ajax({
url: "restServices/archivaUiServices/runtimeInfoService/archivaRuntimeInfo/"+usedLang(),
dataType: 'json',
success:function(data){
window.archivaDevMode=data.devMode;
window.archivaJavascriptLog=data.javascriptLog;
window.archivaRuntimeInfo=data;
window.cookieInformation=mapCookieInformation(data.cookieInformation);
require(['sammy','jquery','jquery.ui','i18n','jquery.tmpl','archiva.main','utils','domReady!'],function () {
startArchivaApplication();
$("#loadingDiv").hide();
drawQuickSearchAutocomplete();
})
}
})
});
});
From the view source
, Firefox can get the correct html content from Archiva 8080 server
, but it can't activate the js function "loadi18n
", the "$("#loadingDiv").hide();
" is not executed at all.
The "js/archiva/archiva.js
" in Archiva
can't work as expected in reverse proxy mode
for unknown reason
.
Run this command to configure
two apache mods
Source