Ein Web-Stack oder auch Web-Application-Stack ist eine Sammlung von Software zur Realisierung von Websites und Webanwendungen. Der Begriff „Stack“ (dt. Stapel) rührt daher, dass die einzelnen Komponenten aufeinander aufbauen. Die minimale Architektur solcher Web-Stacks setzt sich aus einem Betriebssystem, einem Webserver, einer Datenbank und einem Skript-Interpreter zusammen. Mithilfe der entsprechenden Server-Hardware sorgen diese Bündel dafür, dass die notwendigen Informationen über das jeweilige Webprojekt an den anfragenden Client, standardmäßig den Internetbrowser, weitergeleitet werden. Dieser verarbeitet die HTML-, CSS- und JavaScript-Codes und stellt das Webangebot schließlich für den Endnutzer dar.
Da die einzelnen Software-Komponenten eines Web-Stacks sehr individuell kombiniert werden können, existieren zahlreiche Variationen, die sich für ganz unterschiedliche Einsatzszenarien eignen. Die bekannteste Software-Kombination ist das Open-Source-Bundle LAMP, das sich aus Linux, Apache, MySQL und PHP zusammensetzt.