Thursday, January 30, 2025

Re: httpd txt files display - remove Byte-Order Mark problem ?

On 2025-01-30 11:27, Claudio Jeker wrote:
> httpd uses simple content-type of text/plain for txt files.
> It does not include a charset so the browser will probably default to
> utf8
> so if the text files are not in utf8 encoding then the browser will not
> display them correctly.
>
> From my understanding it is not possible to configure a charset in
> httpd(8)
>

Syntax is a bit weird but you can force a default type with charset or a
charset by type:

default type "text"/"plain; charset=utf-8"
types {
include "/usr/share/misc/mime.types"
"text"/"plain; charset=utf-8" txt conf pl sh diff patch md "log"
}

> On Thu, Jan 30, 2025 at 11:02:54AM +0100, Dan wrote:
>> At this point is maybe suggestable you specify the clients you
>> are using to access these files to see in case how to troubleshoot
>> the client encoding / font problem.
>>
>> Jan 30, 2025 10:52:10 Jan Stary <hans@stare.cz>:
>>
>> > httpd serves the file as is, and advices the client with
>> > a Content-Type header. It is then entirely up to the client
>> > (typicaly a browser) to display what the server has served.
>> >
>> > On Jan 30 09:30:16, sylvain@saboua.me wrote:
>> >>
>> >> I have a folder with several standalone .txt files on my webserver.
>> >> I expect these to be displayed as such. But when opening them
>> >> in the browser, either locally (from the same machine) or from 
>> >> remote, several characters such as accents and em dashes get
>> >> replaced by other characters.
>> >>
>> >> Where could this be coming from ? Searching online for a similar
>> >> problem I gather that this could have to do with the presence of a 
>> >> Byte-Order Mark (BOM). If so, is there a handy command on openbsd
>> >> that allows to delete it from the txt file if present ?

No comments:

Post a Comment