Добавить поддержку windows named pipes к webserver
Надо добавить поддержку windows named pipes к какому-либо веб-серверу, код которого доступен под BSD-подобными лицензиями (то есть не GPL, LGPL и тд).
Вебсерверы - в идеале - apache 1.3.33. Еще вариант (менее предпочтительный) - nginx (его порт под винду появился недавно) или еще какой-либо, поддерижвающий php под виндой как модуль (а не как CGI) - например любой из нижеследующих у кого BSD лицензия и который работает под виндой:
caudium
continuity
phttpd
pi3web
roxen
thttpd
tux
webjames
nginx php модулем не поддерживает, но он может FastCGI.
Чтобы веб-сервер принимал запросы через windows named pipe, а не через TCP socket. Чтобы он ВООБЩЕ не использовал TCP сокет ни для принятия запросов, ни для коммуникации с worker'ами, ни с FastCGI сервером (в случае nginx).
Все это нужно для того, чтобы можно было запустить веб-сервер на любом компе и получать к нему доступ с этого же компа. Чтобы никакой фаерволол (есть фаерволы, запрешающие подсоединение к 127.0.0.1 и прослушку портов на 127.0.0.1!) не помешал. Браузер, который будет ходить в этот веб-сервер через windows named pipes, тоже будет нужно сделать (это будет следующий, отдельный проект) на базе webkit или mozilla.
Крайне предпочтительно все-таки изменить апач (а не nginx). В случае апача mod_fastcgi естественно трогать не надо (php в случае апача будет работать как модуль, а не как fast_cgi сервер).
Про апач:
Его можно качнуть отсюда http://archive.apache.org/dist/httpd/apache_1.3.33.tar.gz
Кажется все изменения придется сделать только в файле src/main/http_main.c
Для пересборки апача пользуемся “nmake /f Makefile.win” находясь в каталоге “src” (требуется visual studoio)
Если будете модифицировать апач - режим "работать через windows named pipes" или "работать через TCP" должен переключаться используя коммандную строку (ключ -P - если указан, за ним идет имя named pipe где слушать входящие запросы).
Модифицированный веб-сервер должен поддерживать обслуживание несколько запросов одновременно, а также GET и POST запросы любого размера (вплоть до гигабайтов).
Работать все должно на win2k И выше. Поддержка win9x не нужна.