서버 애플리케이션 프로그래밍 인터페이스

서버 애플리케이션 프로그래밍 인터페이스(Server Application Programming Interface, SAPI)는 Apache HTTP Server, Microsoft IIS, 그리고 Oracle iPlanet Web Server와 같은 웹 서버로의 직접적인 모듈 인터페이스이다. Microsoft 사는 Internet Server Application Programming Interface (ISAPI)이라는 용어를 사용하고, 이제는 존재하지 않는 Netscape web server는 동일한 목적으로 Netscape Server Application Programming Interface (NSAPI)이라는 용어를 사용했었다. 다시 말하자면, SAPI는 웹 서버의 기능을 확장함으로써 다른 개발자들을 돕기 위해 웹 서버로부터 제공되는 application programming interface (API)의 일종이라고 할 수 있다.

예를 들어, PHP는 다른 웹 서버들을 위해 SAPI라 불리는 직접적인 모듈 인터페이스를 가지고 있다. Windows의 PHP 5와 Apache 2.0의 경우, php5apache2.dll이라는 이름의 DLL 파일의 형태로 제공되며, 이 모듈은 다른 기능들 중에서 PHP와 웹 서버 간의 인터페이스를 제공하며, 서버가 이해할 수 있는 형태로 구현된다. 이 형태가 SAPI라고 알려져 있다.

다양한 웹 서버 확장들에 대해 다른 종류의 SAPI들이 존재한다. 예를 들어, 위에 나열된 것 이외에도, PHP 언어에 대한 다른 SAPI들이 Common Gateway Interface (CGI)와 Command-Line Interface (CLI)에 포함되어 있다.

API