Michael Schröpl: Apache: Bug in 1.3.10+

Beitrag lesen

Hallo Leute,

ich habe gerade einen häßlichen bug in Apache entdeckt.
(Nicht als erster - in der Apache-Bug-Datenbank ist er
bereits als #5819 bekannt, aber das nützt mir wenig.)

Apache hat offenbar in Version 1.3.10 eine zusätzliche
Routine zum Prüfen des korrekten Aufbaus eines Host-
Headers eingebaut - mit dem Effekt, daß nun Hostnamen,
welche einen "_" (underscore) enthalten, nicht mehr
akzeptiert werden.

Ich habe einen frisch installierten Apache-Webserver
(1.3.12, Änderungsdatum "gestern") unter Windows NT4 SP4.
Wenn ich ihn in der URL via IP-Adresse anspreche, also

http://153.46.90.173/

anspreche, funktioniert er tadellos.

Gebe ich statt dessen seinen Hostnamen an, etwa bei

http://pc_ms_test/

, dann erhalte ich als Antwort:

Bad Request
     Your browser sent a request that this server could not understand.
     Client sent malformed Host header
     Apache/1.3.12 Server at pc_ms_test Port 80

Man könnte natürlich einfach seinen Hostnamen ändern ...
es sei denn, man darf das nicht, oder er ist im WWW bekannt
(Bookmarks etc.) oder was auch immer.

Bei uns im Büro heißen nun mal alle PCs "pc_*".
Mir bleibt also nur: Weiter Apache 1.3.9 verwenden.

Hat vielleicht jemand von der "DNS-Fraktion" eine Idee
für einen Workaround?

mfG
       Michael