Apache - Multiviews
zwergelchen
- webserver
Hi all,
mmh, wahrscheinlich kennt mich eh keiner mehr, aber ich war hier schon einmal - schoen dass das Forum offen ist.
Ich habe ein Problem mit einem Server, auf dem ich nichts machen kann, ausser meine Dateien mit ftp hochzuladen. Ich habe auf einem anderen Rechner content-neg. genutzt, und wollte das nun auch wieder machen - es war ein langer Kampf, so wie auf dem anderen Rechner ging es nicht.
Dann habe ich die Hilfe http://selfhtml.teamone.de/diverses/htaccess.htm gefunden, es funktioniert auch wunderbar, aber jetzt habe ich das Problem, dass ich jede kleine HTML Datei in index.var eingeben muss und dabei naerrisch werde.
Auf dem anderen Rechner (Server) musste ich nur
Options MultiViews
Order allow,deny
Allow from all
in die .htaccess schreiben, und der Webserver hat fuer _alle_ Dateien die Endung (*.de / *.en) geprueft.
Hat jemand eine Idee, wie ich so etwas simples jetzt auch wieder mit
.htaccess und index.var erreiche und mir das angeben jeder Datei zweimal in index.var sparen kann.
Gruss
Tonio Koletzky
PS: Ich moechte nicht zwei Verzeichnisse nutzen, danke.
Hat jemand eine Idee, wie ich so etwas simples jetzt auch wieder mit
.htaccess und index.var erreiche und mir das angeben jeder Datei zweimal in index.var sparen kann.
Vom Server aus gibt es nur die zwei Möglichkeiten. Wenn Options Multiviews gesperrt ist, und da du sicherlich auch keine Skriptsprache wie PHP zur Verfügung hast, bleibt dir also nur der umständliche Weg über xy.var.
Aber hast du schon beim Hoster gefragt, ob man diese Option nicht freischalten könnte? Oder bist du etwa bei Strato & Co... ;)
Gruß,
soenk.e
Vom Server aus gibt es nur die zwei Möglichkeiten. Wenn Options Multiviews gesperrt ist, und da du sicherlich auch keine Skriptsprache wie PHP zur Verfügung hast,
Doch, PHP steht mir zu Verfuegung
bleibt dir also nur der umständliche Weg über xy.var.
Aber hast du schon beim Hoster gefragt, ob man diese Option nicht freischalten könnte? Oder bist du etwa bei Strato & Co... ;)
Naja, nicht ganz, 1und1 nennt sich dass, und ich weis nochnichteinmal, wo ich da fragen muss, ob sie mir das Freischalten
Aber, anderer Hoster, vielleicht.
Thx
Tonio
Hi,
Ich habe auf einem anderen Rechner content-neg.
genutzt, und wollte das nun auch wieder machen -
es war ein langer Kampf, so wie auf dem anderen
Rechner ging es nicht.
Bei meinem Provider hat es eine Mail gekostet, mir MltiViews zusätzlich einzuschalten. (Per Default durfte ich das auch nicht, war einfach nicht vorgesehen.)
Auf dem anderen Rechner (Server) musste ich nur
Options MultiViews
Order allow,deny
Allow from all
in die .htaccess schreiben, und der Webserver hat
fuer _alle_ Dateien die Endung (*.de / *.en)
geprueft.
Eben - genau dafür ist es da.
Hat jemand eine Idee, wie ich so etwas simples
jetzt auch wieder mit .htaccess und index.var
erreiche und mir das angeben jeder Datei zweimal
in index.var sparen kann.
Wenn Dein Provider Dir eine solche Funktion seines Webservers verweigert, solltest Du darüber nachdenken, ob das wirklich der richtige Provider für Dich ist.
Andererseits - was darfst Du denn alles? Ist beispielsweise CGI dabei? Kannst Du eine entsprechende serverseitige Sprache?
Ich skizziere mal, wie man das Problem mit CGI lösen könnte:
Du schreibst ein Skript, welches den HTTP-Header der Anforderung analysiert (steht in einer Environment-Variablen) und die von Dir geplante Negotiation (zwei Sprachen testen ist leicht) einfach selbst durchführt. Ob Du dabei auf das jeweilige Dokument weiterleitest oder dessen Inhalt einliest und ausgibst (letzteres sind ein paar Zeilen mehr), halte ich für nicht so entscheidend.
Dieses Skript verbindest Du via UNIX-symbolic-link mit sämtlichen Deiner 'verhandelbaren' Dokumente - nachdem Du dafür gesorgt hast, daß es unter _deren_ Namen ausführbar ist. ("DirectoryDefault index.pl" wäre z. B. elegant, und dann Dokumente nur über den Verzeichnispfad ansprechen; ansonsten müßtest Du *.html auf den CGI-handler mappen und dürftest keine Misch-Kultur zwischen verhandelbaren und normalen Dokumenten halten; Du könntest auch *.htm für HTML und *.html für CGI nehmen oder was auch immer.)
Apache-Multiviews in voller Schönheit ist ein Haufen Zeug - aber für Deinen sehr stark eingeschränkten Sonderfall wäre eine CGI-Implementierung durchaus vertretbar, finde ich.
Viele Grüße
Michael
Des Raetsels Loesung war denkbar einfach:
Options +MultiViews
DirectoryIndex
in die .htaccess eintragen
Vielen Dank Michael & Sönke fuer die Tips aw.
Tonio