Hosting both faceook app and website on same server with apahe and tomcat

June 30, 2018 126 views
Apache Ubuntu 16.04

I have a facebook application hosting on a server using tomcat. I have also *apache *server on the same machine where I handle incoming requests and redirect them based on if it is coming secure port(SLL 443) or 80 (standard HTTP port). I have only one domain which is www.myfacebookapp.net.

*The problem starts when I need to host my app and website on the same server. *Normally it shouldn't be a problem however both my app and website have to support SSL (Facebook made it mandatory as it does not accept any connection which is not secure (not https) )

Below is the summary of my configuration

  1. I have only one domain which is www.yarimelma.net
  2. I have SSL certificate which supports only one domain.
  3. I have served my static web page content under /var/www/http/public_html/index.html
  4. My tomcat instance runs on 8080 and my application path is www.myfacebookapp.net/myApp
  5. So when I run my facebook app, it makes a POST request to URL: https://www.myfacebookapp.net/myApp
  6. I have configured my apache instance with virtual hosts such that,
 VirtualHost1 (*: 80)
      ServerName www.myfacebookapp.net
      DocumentRoot /var/www/http/public_html/
VirtualHost1 (*: 443)  #direct to tomcat**
      ServerName www.myfacebookapp.net
      DocumentRoot /var/www/http/public_html/ ProxyPreserveHost On
      ProxyPass / http://127.0.0.1:8080/ 
      ProxyPassReverse / http://127.0.0.1:8080/
      ServerName www.myfacebookapp.net
      SSLEngine on
      #other ssl related config

It works fine *with my facebook app and also webpage *when I access my webpage from 80 (http://www.myfacebookapp.net) **However, **I should also support my webpage support https connections. Unfortunately, I can not achieve this with this configuration. So what I would like to do,

Is it possible to achieve this without any additional domain name and SSL certificate?

I couldn't find any configuration such that,

Apache documentation says that I cant define two virtual hosts for both 443 (https) and same domain.

Basically, I want to host my facebook app and website on the same server and both should be accessible through https.

Anyone knows any solution about this?

Thanks/

Be the first one to answer this question.