This question about Configuration: Answered
Browsing extensions via proxy: 403 Forbidden error message
Hello,
I'm running Foswiki 2.1.2. I'd like to install additional extensions using the "search for extension" and "all available extensions" buttons on the
configure
page.
First, as the server running Foswiki is behind a restrictive firewall, a proxy is provided for internet access. Using the
configure
page, section 'Security and Authentication :: Proxy' I set the proxy host to
http://192.168.1.254:8080
Second, after I saved the configuration, on the
configure
page, I click on "Extensions" in the left navigation bar, select "Extension operation and maintenance" and select the tab "Install, Update or Remove extensions". There I press the "all available extensions" button. As a result a popup window opens and shows the following error message:
Error accessing Foswiki.org: establishing SSL tunnel failed: 403 Forbidden
For your information, if I open a shell on the server, I can connect through the proxy to a https server, for example I succeed downloading Foswiki from sourceforge:
<pre>
$ export https_proxy=192.168.1.254:8080
$ wget
https://sourceforge.net/projects/foswiki/files/foswiki/2.1.2/Foswiki-2.1.2.tgz
</pre>
Please help! How can I debug this connection issue?
--
DannyBoy - 19 Jan 2017
Foswiki uses the
CPAN:LWP and
CPAN:LWP::UserAgent for proxy support. Unfortunate I've not had access to a proxy server to test these. The
Proxy documentation doesn't explicitly mention https support, and the bugs database does have some open tasks claiming https doesn't work, though comments on the bug suggest otherwise.
I'm not sure what to suggest. You might try changing the Foswiki repository URL to use HTTP instead of HTTPS. We don't redirect guest access to ssl. The other option would be to manually download the extension_installer and tgz files to the server and install them from the shell rather than using the web interface,
--
GeorgeClark - 19 Jan 2017
Hello George,
I checked the documentation on the page you provided. When I create a minimal HTTPS client using LWP::UserAgent, I can access, e.g.,
https://sourceforge.net/ through our proxy:
require LWP::UserAgent;
my $ua = LWP::UserAgent->new;
$ua->timeout(10);
$ua->env_proxy;
$ua->proxy('https', 'http://192.168.1.254:8080'); # specify proxy for HTTPS
my $response = $ua->get('https://sourceforge.net/');
if ($response->is_success) {
print $response->decoded_content; # or whatever
}
else {
die $response->status_line;
}
However, when I use this code to access the Foswiki extension repository at
https://foswiki.org/Extensions/ I get the above mentioned error message.
Therefore the issue might be on our side.
-- DannyBoy - 23 Jan 2017