Початково, PHP збирається одночасно як CLI та CGI програма, що може використовуватись для CGI-обробки. Якщо у вас встановлено веб-сервер, який має підтримку PHP як модуля, вам це дозволяє вигравати у продуктивності. Тим не менш, CGI версія дозволяє запускати різні PHP-сторінки під різними ідентифікаторами користувачів.
Використання сервера в CGI-режимі робить його вразливим до деяких атак. В розділі Безпека CGI описано, як захиститися від них.
Якщо у вас зібрана PHP як CGI-програма, ви можете перевірити її ввівши в консолі make test. Це завжди хороший спосіб для перевірки. Таким чином ви можете відловити неполадки з PHP ще на початку її роботи, щоб не мати проблеми пізніше.
Деякі змінні оточення сервера невизначені в поточній » специфікації CGI/1.1. Визначені тільки наступні змінні: AUTH_TYPE, CONTENT_LENGTH, CONTENT_TYPE, GATEWAY_INTERFACE, PATH_INFO, PATH_TRANSLATED, QUERY_STRING, REMOTE_ADDR, REMOTE_HOST, REMOTE_IDENT, REMOTE_USER, REQUEST_METHOD, SCRIPT_NAME, SERVER_NAME, SERVER_PORT, SERVER_PROTOCOL, та SERVER_SOFTWARE. Всі інші повинні оброблятись як 'vendor extensions' (зовнішні розширення).