When we wish to update the screen of the participant without the participant's intervention and after an unknown time (ex-ante), we need ``Server-Push''.
Since server-push requires headers, which differ from those that are sent by the server usually, we have to ask the server not to parse our headers. Traditionally this requires that the name of the script starts with "nph-".
Technically the www-server sends a multi-part page to the client. The header of this page identifies it as multipart/x-mixed-replace and also specifies a boundary. This boundary separates the different pages from each other.
Example:
HTTP/1.0 200 OK Server: Apache/1.2b6 MIME-Version: 1.0 Content-Type: multipart/x-mixed-replace;boundary=EOM --EOM Content-Type: text/html Here is some text --EOM Content-Type: text/html Here is some more text --EOMIn the above example the client would first display the text
Here is some textand then immediately
Here is some more text
Things become more interesting if you first send
HTTP/1.0 200 OK Server: Apache/1.2b6 MIME-Version: 1.0 Content-Type: multipart/x-mixed-replace;boundary=EOM --EOM Content-Type: text/html Here is some text --EOMNow the client displays
Here is some textand waits. After a little while you can send
Content-Type: text/html Here is some more text --EOMNow the client displays a new page that contains
Here is some more text