let INSTALL.sh install for nginx alone and write its configuration
-S apache|nginx says which http server faces the browser; apache stays the
default, so an installation that does not pass it is the same as before.
With nginx no .htaccess is installed: nginx never reads them. They come
not only from web/ and webtest/ but also from brisk-img and curl-de-sac,
so they are dropped once the whole tree is in place rather than filtered
out of each install. Etc/.htaccess is not written either, and the run says
that the nginx configuration has to deny Etc instead.
That configuration is now written by INSTALL.sh itself, in Etc beside the
brisk configuration, already aligned with -P, -U and the root of the site:
nginx-<name>.conf http level: the upgrade map and the upstream,
unix sockets or tcp ports from -U, USOCK_POOL_N
members read from brisk-spush.phh
nginx-<name>-server.conf inside the server {} that terminates the tls:
the nine daemon urls, the denies that replace
the .htaccess (Etc included when it falls
inside the root), php-fpm, the static files,
the docroot/ files at the root of the site
nginx-<name>-daemon.inc the directives of the nine daemon urls
<name> comes from the prefix, and so do the map variable and the upstream,
so two installations or another site with its own $connection_upgrade can
share one nginx. -F and -B say where php-fpm listens and where the tree is
on that machine, for a front whose php pages run on the daemon host. A
file that changed is kept as .old; one that did not is left alone.
proxy_request_buffering exists from nginx 1.7.11 and older ones refuse the
whole configuration: when the local nginx can be asked its version, the
line is commented out for it. Nothing is written with -m server, where
nginx has no part, nor with -D FALSE, which needs a handover module.
Checked by installing into a scratch tree: front with -U tcp:// and a
remote php-fpm, full with unix sockets, server, and a fake nginx 1.6.2.
The front files pass nginx -t on 1.26.3, and a test nginx running them
answers 200 for the static files and /cookie_law.js, 404 for Obj/, spush/,
.phh, .pho and Etc/, sends the php pages to php-fpm and leaves the .php of
the rest of the site to its own location.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>