[11:21] Post by Manu16 @ Der FC Bayern München — Thread
[14:44] Post by Aragorn @ Der FC Bayern München — Thread
[20:00] Lottoziehung in 05d 00:00h
[00:00] Songs gespielt gestern: 268
[00:01] Alles Gute an FeSteadman, VaMabe, TaPaschke, Du4945, LuSimonson, Be9845, FiGracia, CaHedges, CaMontes, TeAbreu, X-ray, KeKoonce, QKIFr, SaMurch
[05:22] Post by Chiller12345 @ 100.000 Beiträge Projekt
Trackmania Minecraft Andere Spiele

Textdateien mit UTF-8 charset im Header ausliefern (Lighttpd)

24.07.10, 16:10:21
Zahl
Da ich sowieso nur noch UTF-8 für Textdateien und andere Dokumente verwende fand ich die Idee recht sinnvoll, dies im HTTP Header beim Ausliefern solcher Dateien auch gleich mitzuteilen. Unter Debian erzeugt lighttpd beim Starten durch ein Script für diverse Dateinamenserweiterungen ein mime-type Mapping, welches man dafür einfach erweitern kann.
Ich habe das Script so verändert, dass es bei allen Dateitypen, deren mime-typ mit text/ anfängt, ein charset=utf-8 anhängt. Das macht vielleicht nicht bei allen Dateitypen die in /etc/mime.types stehen Sinn, aber die werde ich wahrscheinlich eh niemals per HTTP hosten, bzw. lädt man sie dann wahrscheinlich runter, anstatt sie anzuzeigen.

/usr/share/lighttpd/create-mime.assign.pl
Code:
#!/usr/bin/perl -w
use strict;
open MIMETYPES, "/etc/mime.types" or exit;
print "mimetype.assign = (\n";
my %extensions;
while(<MIMETYPES>) {
 chomp;
 s/\#.*//;
 next if /^\w*$/;
 if(/^([a-z0-9\/+-.]+)\s+((?:[a-z0-9.+-]+[ ]?)+)$/) {
 my $pup = $1;
 foreach(split / /, $2) {
 # mime.types can have same extension for different
 # mime types
 next if $extensions{$_};
 next if not defined $pup;
 next if $pup eq '';
 $extensions{$_} = 1;
 if ($pup =~ /^text\//) {
 print "\".$_\" => \"$pup; charset=utf-8\",\n";
 } else {
 print "\".$_\" => \"$pup\",\n";
 }
 }
 }
}
print ")\n";
 

Lesezeichen

Stichworte
lighttpd, linux, utf8
Kommentare (0)

Kommentar:
Benutzername: 
Email (nicht ausfüllen!): Sicherheitsgrafik


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Aktivität
Game Server
Minecraft
1 Spieler

Winamp.exe
Encoded
von Hardwell
jotoe @ 13:08:38

Teamspeak 3

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:09:41 Uhr.


Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Template-Modifikationen durch TMS
Die Betreiber haften nicht für die Inhalte der User. Die Beiträge spiegeln ausschließlich persönliche Meinungen wider, und nicht die der Seitenbetreiber.