HTTP - гипертекстовый транспортный протокол. Apache и Tomcat будут принимать HTTP-запросы.
Разница в том, что Apache - это просто HTTP-сервер. Он обслуживает статические HTML-страницы.
Tomcat имеет прослушиватель HTTP внутри, но в дополнение к этому у него есть движок сервлета / JSP. Может обслуживать как статические, так и динамические HTML-страницы.
Вы можете использовать Tomcat без Apache.
Apache не может обрабатывать запросы сервлетов / JSP, если над ним не установлен двигатель сервлета / JSP