Apache 2 è la più recente e migliore versione del server Apache, la cui architettura contiene significativi miglioramenti rispetto alla serie 1.3, tra cui possiamo menzionare:
- Moduli multiprocesso, grazie ai quali Apache può essere configurato come un server basato su processi
- Moduli di protocollo, rendono possibile la scrittura di moduli per protocolli diversi da HTTP, quali POP3 per la posta o FTP per il trasferimento di file.
- Apache 2 conserva l'architettura modulare di 1.3 con l'aggiunta di un ulteriore meccanismo di estensione rappresentato dai filtri.
Apache 2 funziona egregiamente sia su piattaforme Windows che Unix grazie alla libreria Apache Portable Runtime (APR), che astrae le differenze tra sistemi operativi, come le API di accesso al network o ai file.
Per quanto il modulo API sia simile in entrambe le versioni, non è comunque identico e i moduli di Apache 1.3 necessitano di essere adattati alla nuova architettura.
La versione 2.2.3 introduce diverse interessanti novità sul fronte delle autorizzazioni basate sul modulo mod_authn_alias, del caching per le memorie, un sistema di bilanciamento del carico, una nuova gestione delle Api, un nuovo supporto per file di dimensioni superiori a 2Gb.
Inoltre, il nuovo modulo mod_proxy_ajp supporta il protocollo Apache JServ utilizzato da Tomcat in Java Servlet e JavaServer Pages.