Can a single Apache server handle both Tomcat and PHP?

后端 未结 4 799
滥情空心
滥情空心 2021-02-04 15:26

I have a requirement as to have a single server with both a Java application and a PHP application, running on the same Apache. Is this possible?

This question may be ve

4条回答
  •  春和景丽
    2021-02-04 15:54

    This is possible using Apache Reverse Proxy,

    I configured one Apache virtual host that serves one PHP website (Drupal) and one java (tomcat, for business logic) that are stored in the same server using a reverse proxy with 2 locations, the advantage of this configuration is that it doesn't expose the port that Tomcat is using on the URL which was mandatory for me for security reasons.

    This is how I achieved this:

    
    ProxyPreserveHost       On
    DocumentRoot            "/srv/www/htdocs/"
    ErrorLog                /var/log/httpd/app_error_log.log
    CustomLog               /var/log/httpd/app_log.log combined
    ServerName              myapp.com
    
    #Drupal PHP Content, stored at / as the main front end website.
    
        ProxyPass http://localhost/
        ProxyPassReverse http://localhost
        Order allow,deny
        Allow from all
    
    
    #Tomcat/java content, secondary site used to process payments and business logic:
    
        ProxyPass http://localhost:8080/javaApp/
        ProxyPassReverse http://localhost:8080/javaApp/
        Order allow,deny
        Allow from all
    
    
    
    

    Restart Apache:

    service httpd restart;
    

    Test your reverse proxies: PHP/Drupal (In my case i'm using drupal but can be any PHP code):

    http://yourserverip/ or http://localhost/
    

    Java:

    http://yourserverip/javaApp or http://localhost/javaApp
    

    I hope someone can find this useful. I had a hard time trying to figure this out. :)

    Regards.

提交回复
热议问题