The revision has no way for a server to put a request on a response stream, so a handler that needs input from the user says so in its result instead: a handler returning InputRequiredResult comes back as resultType: "input_required" with the asks and an opaque requestState, and the client retries the same request carrying inputResponses. RequestContext::getInputContext() is what the handler reads them through. RequestStateCodec signs and time-bounds the state, so a tampered or expired one is refused rather than trusted - the state travels through the client, which is not a place to keep something the server later believes.
21 lines
560 B
Nginx Configuration File
21 lines
560 B
Nginx Configuration File
server {
|
|
listen 80;
|
|
server_name localhost;
|
|
root /app;
|
|
|
|
# / speaks the handshake era, /stateless the modern one (SEP-2575).
|
|
# Declared first so the prefix match wins.
|
|
location /stateless {
|
|
try_files $uri /tests/Conformance/server-stateless.php$is_args$args;
|
|
}
|
|
|
|
location / {
|
|
try_files $uri /tests/Conformance/server.php$is_args$args;
|
|
}
|
|
|
|
location ~ \.php$ {
|
|
fastcgi_pass php-fpm:9000;
|
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
include fastcgi_params;
|
|
}
|
|
}
|