Michael: Charset mal wieder - denke ich zumindest ?!

Hallo,

vereinfacht habe ich folgenden Code:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<object
id="Object2"
type="application/x-shockwave-flash"
data="player_mp3_maxi.swf"
width="200" height="20">

	<param name="wmode" value="opaque" />  
	<param name="movie" value="player\_mp3\_maxi.swf" />  
	<param name="autoplay" value="false" />  
	<param name="autoload" value="false" />  
	<param name="FlashVars" value="mp3=preview/%C3%A4/%C3%BC\_%C3%A4%20\_.mp3" />  

</object>

  • html liegt auf einem NAS (QNAP TS-119), Apache
  • ohne Sonderzeichen im Dateinamen funktioniert es problemlos, sprich, mp3 wird abgespielt
  • mit Sonderzeichen leider gar nicht, wenn über http://192..... aufgerufen
  • irgendwann fiel mir auf, dass es geht, wenn aufgerufen über ftp://192... oder über eingebundenes Netzlaufwerk, also \server...

Mir ist der Unterschied einfach nicht klar ????
Kann mir das bitte jemand erklären? Und wie bekomem ich das mp3 über http zum laufen?

Herzlichen Dank für Eure Hilfe!

  1. Hallo,

    <param name="FlashVars" value="mp3=preview/%C3%A4/%C3%BC_%C3%A4%20_.mp3" />

    Wenn Dateinamen mal gefunden werden und mal nicht, könnte es (auch) an Groß- und Kleinschreibung liegen. Windows ist das egal, Unix oder Inix-nahen Protokollen (ftp ?) aber nicht.

    Gast

    1. Wenn Dateinamen mal gefunden werden und mal nicht, könnte es (auch) an Groß- und Kleinschreibung liegen. Windows ist das egal, Unix oder Inix-nahen Protokollen (ftp ?) aber nicht.

      Das ist aber eine Sache des Servers, nicht des Clients.

      Wenn also zwischenzeitlich nicht permanent zwischen einem IIS und einem Apache herumgewechselt wird, spielt das keine Rolle.

      1. Wenn Dateinamen mal gefunden werden und mal nicht, könnte es (auch) an Groß- und Kleinschreibung liegen. Windows ist das egal, Unix oder Inix-nahen Protokollen (ftp ?) aber nicht.

        Das ist aber eine Sache des Servers, nicht des Clients.

        ich denke, hier liegt mein Problem - also der Apache-Konfiguration
        doch was kann ich da noch einstellen, ausser utf-8 ????

        Wenn also zwischenzeitlich nicht permanent zwischen einem IIS und einem Apache herumgewechselt wird, spielt das keine Rolle.

        eben, es geht bei ftp ja immer, bei http nie

  2. Hi!

      <param name="FlashVars" value="mp3=preview/%C3%A4/%C3%BC\_%C3%A4%20\_.mp3" />  
    
    • html liegt auf einem NAS (QNAP TS-119), Apache
    • ohne Sonderzeichen im Dateinamen funktioniert es problemlos, sprich, mp3 wird abgespielt
    • mit Sonderzeichen leider gar nicht, wenn über http://192..... aufgerufen

    Der Apache, der den HTTP-Request entgegennimmt, weiß nicht, welche Zeichenkodierung das Dateisystem spricht. Es gibt da meines Wissens auch keine Möglichkeit, das eindeutig rauszufinden. Ebensowenig gibt es eine Direktive, mit der man angeben kann, wie Dateinamen zu kodieren sind. Offensichtlich macht er es also nicht passend zum Betriebssystem.

    • irgendwann fiel mir auf, dass es geht, wenn aufgerufen über ftp://192... oder über eingebundenes Netzlaufwerk, also \server...

    Die hingegen schon - vielleicht nur zufällig. Dem Samba kann man die Kodierung der Dateinamen angeben.

    Und wie bekomem ich das mp3 über http zum laufen?

    Nimm ASCII-Zeichen.

    Lo!

    1. Nimm ASCII-Zeichen.

      foo[CR][LF]bar.mp3

      [ACK]?

      Ich würde mich tendentiell auf ein Subset der ASCII-Zeichen beschränken - [0-9a-zA-Z] sowie - und _ macht am wenigsten Probleme.

      Sofern man URL-Encoding als Problem sieht

      Mein schöner Titel! als Bezeichner sieht als "mein-schoener-titel.mp3" einfach ordentlicher aus als "mein%20schoener%20titel%21.mp3"

  3. Der Apache, der den HTTP-Request entgegennimmt, weiß nicht, welche Zeichenkodierung das Dateisystem spricht. Es gibt da meines Wissens auch keine Möglichkeit, das eindeutig rauszufinden. Ebensowenig gibt es eine Direktive, mit der man angeben kann, wie Dateinamen zu kodieren sind. Offensichtlich macht er es also nicht passend zum Betriebssystem.

    also habe ich ein Problem in der Kommunikation zwischen Apache und NAS
     - kann da jemand helfen? Ich habe die Einstellungen durchgesehen und finde keinen Ansatzpunkt

    Nimm ASCII-Zeichen.

    naja. sind ä & ü nicht ASCII-Zeichen?
    also &#228  &  &#252 ...

    klar, könnte ich die Dateien umbenennen
    doch wir sprechen von über 10.000 mp3s die automatisiert verwaltet werden sollen

    Falls noch jemand Rat weiss ,wäre ich sehr dankbar

    1. Hi,

      Nimm ASCII-Zeichen.
      naja. sind ä & ü nicht ASCII-Zeichen?

      Nein, ASCII ist ein 7-Bit-Zeichensatz, der damit nur 128 Code-Points hat ...

      klar, könnte ich die Dateien umbenennen
      doch wir sprechen von über 10.000 mp3s die automatisiert verwaltet werden sollen

      Ja und? Die Ersetzung von Ä -> Ae, ä -> ae usw. ist doch automatisierbar.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      O o ostern ...
      Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.