Apache port forward
Setting up the proxy
To set up a reverse-proxy with Apache2, you first need to enable the Apache proxy module and virtualhosts. To enable the proxy module (mod_proxy), edit the Apache configuration file (Apache/conf/httpd.conf) and uncomment the following lines:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule unique_id_module modules/mod_unique_id.so
You then need to enable VirtualHosts. To do this, just uncomment the following line from the same configuration file:
Include conf/extra/httpd-vhosts.conf
Finally, you need to edit Apache/conf/extra/httpd-vhosts.conf and write in it the proxy directives. From the information you gave, they should look like this:
<VirtualHost *:80>
ServerAdmin ******
DocumentRoot "******"
ServerName *****
ProxyRequests Off
ProxyVia Off
ProxyPass /couch/ http://127.0.0.1:5984/
ProxyPassReverse /couch/ http://127.0.0.1:5984/
</VirtualHost>
(+ some mLog directives and a few others).
-> Apache restart -> profit.
Learning Apache
You should have a look at the official documentation on the Apache official website or Apachetutor.org, though Google is, and always will be, everyone's friend.
Jaseem
Updated on July 09, 2022Comments
-
Jaseem almost 2 years
I have apache couchDB active on http://localhost:5984/ which i need to access at http://localhost:80/couch/. I need to setup a reverse proxi for this. Need help with the configuration settings.
PS: Whats the best resource to learn about apache?
-
PeakGen almost 9 yearsHi, can you update theanswer according to apache2 ?
-
Nicolas BRERO over 8 yearsHi, the answer is already intended for Apache2. Anything I can help you with?
-
Brian Leishman over 4 yearsI think he's referring to the fact that there is no "httpd.conf" file in a normal apache2 install on a modern linux install, say, Ubuntu 18.04
-
Petrov. Ivan Petrov about 2 yearswhoever ends up here for this awesome answer saving one time and stress energy, might also be interested in how to activate those modules on ubuntu:
a2enmod proxy
,a2enmod proxy_http
,a2enmod unique_id
,sudo apachectl -k restart