John, as your postings is some kilometers above, I cite the relevant parts:I certainly wasn't intending to question the accuracy of your information.
No offense taken. I just wanted to make sure that you know that my statement is not just a guess. By now I do know quite a lot about HTML (though certainly not all!), and before I make such statements, I always look into the standard to make sure I do not tell nonsense.
I may be trying to read more into the Std than is there, but it appears that an HTML server (via a charset= statement in it's header file) is permitted define a "charset" that, once defined, allows you to just type any character on your keyboard - if it's in the character set, and of course if it's on your keyboard. A "proper" HTML file being sent to a receiving interpreter may define the charset it wants to use, which may or may not be implemented, depending on whether the receiving device has the files and fonts to implement it.
There is no such thing as an HTML server - you probably mean a HTTP server (a server that delivers HTML files as well as images, text, css, class, ... via the HyperTextTransferProtocol; e.g. Apache, IIS). This http server does not look (with a few exceptions) at the contents of the file - someone (usually a browser) asks for a file, the HTTP server looks whether the file exists and if so, delivers it to the browser.
Only when the file has arrived at the browsers such things as charset definitions are looked at. And - as you already noticed - if the recipient does not have the font containing the characters, these will not be shown correctly.
For the exceptions from "HTTP server does not look at the files":
Server Side Includes are usually done by the HTTP server itself. Same goes for PHP scripts where usually there is a module handling these included into the HTTP-Server. JSP-Files are given to a JSP-Engine (e.g. Tomcat, JServ, JRun). CGI-Scripts are given to the Script-Interpreter.
There are some more but it would take a long time to list them all.
HTH
MudGuard