Der Martin: Groß- Kleinschreibung unter Windows

Beitrag lesen

Hi,

Windows ist zwar "case insensitive", aber "case preserving". Das heißt, es kümmert sich selbst nicht um Groß/Kleinschreibung, gibt die Schreibweise aber exakt so wieder wie eingegeben.

Was ich dann trotzdem nicht verstehe ist: Warum macht die gleiche Abfrage
mit
if($_SERVER['SCRIPT_NAME'] == "/myweburl/index.php")

auf einem Win 32 KEINEN Unterschied? Hier greift sowohl /myweburl/index.php als auch /MyWebUrl/index.php

das hätte ich gern präzisiert, weil ich jetzt selbst neugierig geworden bin:
 a) Wie heißt der Dateisystempfad wirklich (exakte Schreibweise)?
 b) Wie lautet die genaue Request-URL (exakte Schreibweise)?
 c) Was liefert $_SERVER['SCRIPT_NAME'] (exakte Schreibweise)?
 d) An welcher Stelle probierst du die verschiedenen Schreibweisen?
    In der Stringkonstanten im Quellcode?
    Im Request?

Meine Vermutung ist nämlich: Apache unter Windows findet die Dateien im Filesystem unabhängig von der genauen Schreibweise (case insensitive), $_SERVER['SCRIPT_NAME'] gibt jedoch die korrekte Schreibweise wieder, die nicht mit dem Request identisch sein muss. Dass das Verhalten auf einem 32bit-Windows anders sein soll als auf einem 64bit-Windows, kann ich mir aber nicht vorstellen. Eher schon, dass die Pfade tatsächlich anders heißen.
Ich habe leider keinen Apache auf Windows mehr zur Hand, der ging vor etwa 1½ Jahren in Rente.

So long,
 Martin

--
Nicht jeder, der aus dem Rahmen fällt, war vorher im Bilde.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(