Apache stellt Sonderzeichen falsch dar

  • #1
C

Cougar

Mitglied
Themenersteller
Dabei seit
26.06.2002
Beiträge
20
Reaktionspunkte
0
Hallo Leute,

ich habe einen Linux-Rechner in ein Windows-Netzwerk integriert. Auf dem Rechner läuft ein Apache-Webserver für das Intranet. Das funzt soweit alles ohne Probleme, bis auf eine Tatsache: Sonderzeichen (wie z.B. Umlaute oder ß) werden nicht dargestellt (es erscheint statt dessen nur ein Kästchen). Auf dem alten Webserver (IIS) wurden die aber korrekt angezeigt. ???
Meine Frage lautet also: Ist es möglich, im Apache einzustellen, dass ein bestimmter Zeichensatz (also Deutsch) benutzt werden soll??

Bin dankbar für jeden Hinweis. :)
 
  • #2
verwendest du unter linux de? prüfe mal nach, echo $LANG, dann sollte was mit de_DE oder so ausgegeben werden. apache übernimmt normalerweise globale variablen.

greetz

hugo
 
  • #3
So wie ich das sehe, is die Variable LANG gar nicht gesetzt, er spuckt zumindest nichts aus.
Wie kann ich die globalen Variable setzen?
Danke nochmals..
 
  • #4
im verzeichnis /etc gibts die globale einstellungsdatei profile genannt, da kann man variable setzten die für alle user gelten sollen. ich hab das bei meinem redhat so eingestellt:

LANG=de_DE@euro; export LANG

dann ist der euro als symbol auch dabei.

greetz

hugo
 
  • #5
Hab das umgestellt, aber nach wie vor keine Veränderung.
Aber trotzdem vielen Dank :)
 
  • #6
hast du auch den apache neu gestartet?

greetz

hugo
 
  • #7
yo, hab ich.... aber so wie es im moment aussieht, liegt das am quelltext bzw. am browser, der die zeichen falsche interpretiert.
 
  • #8
Hast du im Quelltext deiner Webseite die richtigen Doctype und charset Angaben gemacht? Hast du im Quelltext deine Sonderzeichen so Ä, Ö, Ü, ü, ä , ö, ß oder so Ü usw. stehen? Wenn du die Sonderzeichen wie Sonderzeichen geschrieben hast und nicht die HTML Konformen Varianten genommen hast ist das klar das es nicht funzt. Denn das verstehen einige Webbrowser nicht. Also immer schön den Quelltext W3C Konform halten. Siehe
 
  • #9
Wahrscheinlich ist in der httpd.conf folgender Parameter gesetzt, bzw. ist im Apache als interner Default-Wert vorhanden:

AddDefaultCharset Off

Damit Angaben im HTML-Quelltext wie

<?xml version=1.0 encoding=ISO-8859-1?>
<meta http-equiv=Content-Type content=text/html; charset=ISO-8859-1 />

vom Apache richtig interpretiert werden, muss daher in der httpd.conf der Wert auf

AddDefaultCharset On

stehen.

Dieser Eintrag überschreibt die HTML-Tags:

AddDefaultCharset <charset>

Beispiele:
AddDefaultCharset iso-8859-15
AddDefaultCharset utf-8

Grüße
Ralf Münk
 
  • #10
@Ralf Münk

Ähm du hast aber schon den Thread bis zu Ende gelesen? Inkl. Folgendem Abschnitt?!

Cougar schrieb:
yo, hab ich.... aber so wie es im moment aussieht, liegt das am quelltext bzw. am browser, der die zeichen falsche interpretiert.

Hat also nichts mit dem Apache zu tun. Da der Thread nun schon über 6 Monate alt ist und geruht hat denke ich war Cougar geholfen.
 
  • #11
Hallo,

mime_module muss in der httpd.conf geladen sein und folgende Zeilen müssen angegeben sein:

<IfModule mod_mime.c>
    AddLanguage en .en
    AddLanguage de .de
    ...
        <IfModule mod_negotiation.c>
            LanguagePriority en de......
        </IfModule>
</IfModule>

Und das mal lesen:

Gruß
Sven
 
Thema:

Apache stellt Sonderzeichen falsch dar

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben