Joomla! to system zarządzania treścią (CMS) działający po stronie serwera. Oznacza to, że użytkownik w przeglądarce wysyła żądanie HTTP/HTTPS, a serwer wykonuje aplikację i odsyła wygenerowaną stronę.
Do uruchomienia Joomla! typowo potrzebne są trzy elementy środowiska:
- Serwer WWW (np. Apache) – przyjmuje połączenia od przeglądarki, obsługuje routingi, przekazuje żądania do PHP i zwraca odpowiedź.
- PHP – Joomla! jest napisana w PHP, więc bez tego komponentu kod aplikacji nie zostanie wykonany.
- Baza danych (np. MySQL) – CMS przechowuje w bazie m.in. konta użytkowników, artykuły, menu, ustawienia i wiele danych rozszerzeń.
Dlatego odpowiedź "Apache, PHP i MySQL" odpowiada kompletowi: warstwa WWW + warstwa wykonawcza aplikacji + trwałe składowanie danych.
Dlaczego pozostałe propozycje są błędne? "Apache i PHP" nie zawiera bazy danych, a Joomla! w standardowej instalacji wymaga serwera DB do zapisania konfiguracji i treści. "PHP i MySQL" pomija serwer WWW, więc brakuje komponentu, który udostępnia aplikację w sieci (w praktyce potrzebny jest Apache/Nginx/IIS). Z kolei "IIS, PERL i MySQL" wskazuje język PERL, który nie jest środowiskiem uruchomieniowym Joomla! (Joomla! nie jest aplikacją perlową), więc zestaw technologicznie nie pasuje do CMS opartego o PHP.
W praktyce warto pamiętać, że w zależności od wersji Joomla! oraz konfiguracji serwera dopuszczalne mogą być też inne zamienniki (np. inny serwer WWW lub inny silnik bazy zgodny z wymaganiami), ale rdzeń wymagań pozostaje taki sam: serwer WWW, PHP oraz baza danych.