Мне удалось решить эту проблему с помощью setenv.add-request-header. Оказывается, переданный в пользовательском заголовке префикс «HTTP_», поэтому, если файл ligghtpd.conf имеет директиву:
setenv.add-request-header = (
"FOO" => "1"
)
Тогда бэкэнд scgi должен искать заголовок запроса HTTP_FOO вместо FOO.