What is the generic difference between the two processes on a linux box ?
I always thought they are the same thing, basically a web server so the users have some ui where they can make requests.
1 Answer
Both are web servers, but they provide nearly opposite features when it comes to hosting dynamic webapps:
Apache httpd has modules for directly hosting e.g. PHP or Python webapps, and it supports proxying requests to standalone webapps, whether they speak HTTP, or FastCGI (PHP-FPM), or uwsgi (Python/Ruby/etc). However, it cannot host Java apps directly – it has to forward the requests to another webserver which can, such as Tomcat or Jetty.
Apache Tomcat directly supports hosting web apps written in Java (servlets, etc.). However, it doesn't support any other CGI interfaces, i.e. you cannot make it serve FastCGI.