title: How to enable Apache SSL Reverse Proxy on HTTP application
body: <p>I've been having problems attempting to implement a reverse SSL proxy on Apache for an HTTP application on Ubuntu 14.04. As a baseline, the application works fine when I access it via port 8000 in the browser normally. For all intents and purposes, let's say the IP of my app is 192.141.56.11 (I do not have a domain name yet). The application runs with HTTP Basic Auth, I don't know if it's relevant. Basically I'm fishing for some glaring error here and would be grateful if you could help me out. Here is a log of my process:</p>
  
  <p>I created my SSL cert and key and put them in the following locations:</p>
  
  <pre><code>/etc/apache/ssl/apache.crt (I performed chmod 644 here)
  /etc/apache/ssl/apache.key (I performed chmod 400 here)
  </code></pre>
  
  <p>I then installed:</p>
  
  <pre><code>apt-get install apache2
  a2enmod proxy
  a2enmod ssl
  a2enmod proxy_http
  </code></pre>
  
  <p>I then disabled the default config with:</p>
  
  <pre><code>a2dissite 000-default
  </code></pre>
  
  <p>I created the file "/etc/apache2/sites-available/redirect.conf"</p>
  
  <p>I then created the file "/etc/apache2/sites-available/redirect.conf" and copied the text below:</p>
  
  <pre><code>&lt;VirtualHost *:80&gt;
      Redirect "/" "https://192.141.56.11"
  &lt;/VirtualHost&gt;
  </code></pre>
  
  <p>After, I created the file "/etc/apache2/sites-available/reverse_proxy.conf" and copied below:</p>
  
  <pre><code>&lt;VirtualHost *:443&gt;
  SSLEngine On
  SSLCertificateFile /etc/apache/ssl/apache.crt
  SSLCertificateKeyFile /etc/apache/ssl/apache.key
  ProxyPass / http://127.0.0.1:8000/
  ProxyPassReverse / http://127.0.0.1:8000/
  </code></pre>
  
  <p></p>
  
  <p>and did:</p>
  
  <pre><code>service apache2 restart
  </code></pre>
  
  <p>I now attempt to access the UI of the application on another machine in the Chrome browser. When trying:</p>
  
  <pre><code>https://192.141.56.11
  </code></pre>
  
  <p>I get a general SSL connection error.</p>
  
  <p>However, trying</p>
  
  <pre><code>http://192.141.56.11:8000
  </code></pre>
  
  <p>gives me the application, as if none of my config changed anything. However,</p>
  
  <pre><code>192.141.56.11:80
  </code></pre>
  
  <p>gives me an "Index Of" page with an html folder that says "Apache/2.4.7 (Ubuntu) Server at 192.141.56.11 Port 80"</p>
  
  <pre><code>192.141.56.11:443
  </code></pre>
  
  <p>gives me the same result except with "Apache/2.4.7 (Ubuntu) Server at 192.141.56.11 Port 443"</p>
  
  <p>I've tried all manners of configurations but can't get what I want -- any ideas here?</p>