hallo
auch ein BOM ist eine Sache der Vereinbarung. D.h., der Empfänger muss wissen, ob er ein BOM zu lesen hat und wenn ja, wieviele Bytes!
Eine Verienbarung ist eine Einigung zwischen mehreren Partnern wobei alle frei sein müssen, zwischen mehreren Optionen sich zu entscheiden.
Ich wüsste nicht, wie ein CGI Prozess frei ist, eine shebang Zeile mit oder ohne BOM zu lesen.
Die Logik dahinter ist jedoch dieselbe und läuft stets auf eine Vereinbarung Content-Type+Charset hinaus. Beim Content-Type text/html ist es möglich auf den Charsetparameter zu verzichten, weil dieser Content-Type die Möglichkeit vorsieht die Kodierung im Dokument selbst zu deklarieren.
...so wie auch andere Fileformate Informationen enthalten, die für den Parser relevant sind.
Ich hatte im übrigen da mal eine Beobachtung:
https://forum.selfhtml.org/self/2018/aug/20/msie-11-ein-paar-beobachtungen/1729448#m1729448
Betrifft MSIE 10 xhr-Zugriff auf Datei ohne BOM.