Skrypty po stronie serwera to termin używany głównie w odniesieniu do obsługi niestandardowych treści za pośrednictwem protokołu przesyłania hipertekstu (HTTP) na serwerze sieciowym, ponieważ serwer wykonuje małe programy. Programy te, zwykle napisane w języku skryptowym, są wykonywane przez serwer, gdy nadejdzie żądanie klienta. W zależności od parametrów podanych przez klienta w momencie żądania, skrypt generuje następnie stronę internetową dla klienta. Tworzone w ten sposób strony internetowe są często nazywane stronami dynamicznymi. Jest to przeciwieństwo skryptu po stronie klienta, który jest wysyłany z serwera do żądającego klienta, a następnie wykonywany.
Pierwsze techniki tworzenia skryptów po stronie serwera powstały w celu dostarczenia treści, która jest unikalna dla użytkownika składającego żądanie, a także zaoszczędzenia czasu dzięki ograniczeniu ręcznej edycji dokumentów w hipertekstowym języku znaczników (HTML). Skrypty po stronie serwera były często małymi plikami wykonywalnymi zawierającymi szereg poleceń przekazywanych do systemu operacyjnego. Demon sieciowy, oprogramowanie obsługujące serwer sieciowy, używałby tych skryptów powłoki do dalszego wykonywania dodatkowego programu znajdującego się na komputerze hosta. Ta ogólna technika została następnie zdefiniowana w 1993 roku w standardzie CGI (Common Gateway Interface) opracowanym przez Internet Engineering Task Force (IETF). W większości przypadków te wczesne skrypty CGI były używane do wysyłania odpowiedzi bazy danych z serwera z powrotem do żądającego klienta.
W miarę rozwoju interpretowanych języków skryptowych, takich jak Perl i PHP: Hypertext Preprocessor (PHP), ewoluowały również metody skryptowe po stronie serwera. Demony HTTP zostały zaktualizowane, aby zawierały rozszerzenia, które pozwalały na wywoływanie tych różnych języków skryptowych z samego demona internetowego, zamiast przesyłania ich do systemu operacyjnego na hoście. Dzięki temu dodatkowi fragmenty języka skryptowego mogą być zawarte w dokumencie HTML. Gdy serwer WWW odczytuje dokument przed wysłaniem go przez Internet, sprawdza i wykonuje dowolny skrypt w dokumencie.
Ponieważ treść wywoływana przez skrypty po stronie serwera znajduje się w bazie danych, może to być praktycznie wszystko. Treści, takie jak opisy produktów, wahania cen, wpisy na blogu, zdjęcia, a nawet formatowanie, są przechowywane w bazie danych. Możliwe jest również zagnieżdżenie jednego fragmentu skryptu po stronie serwera w innym, gdzie pierwszy skrypt pobiera określone dane z bazy danych, ale także wywołuje drugi skrypt, który uzyskuje dostęp do danych wtórnych. Jest to przydatne na przykład podczas dostarczania dość niestandardowej, standardowej zawartości z dodatkową zagnieżdżoną zawartością, która może być zależna od czasu lub jeszcze nieznana, na przykład komentarze we wpisie w blogu. Utrzymanie witryny internetowej polega zatem na aktualizowaniu danych w bazie danych, co następnie będzie miało wpływ na każdą stronę w witrynie z dołączonym skryptem wywołującym te dane.
Wiele technik wykonywania skryptów po stronie serwera zostało rozwiniętych w tak zwane systemy zarządzania treścią (CMS). PHP jest prawdopodobnie najczęściej używanym językiem do tego celu, działającym u podstaw wielu implementacji CMS. W tym przypadku użytkownik prowadzący witrynę działającą w systemie CMS będzie edytować swoje dokumenty HTML, aby zawierały tak zwane znaczniki. Znaczniki są w zasadzie wskazówkami dla CMS, które mówią mu, jaki skrypt ma zawrzeć w dokumencie. CMS można następnie dostosować, tworząc dodatkowe skrypty i powiązane z nimi tagi.