Einbindung SSI
Zeromancer
- webserver
0 Avalon0 Zeromancer0 Avalon0 Zeromancer0 Avalon
0 Avalon
Hallo und Guten Tag,
ich beschäftige mich nun schon seit etlichen Wochen mit folgendem Problem:
Ich habe eine bestehende Seite neu gestaltet und ein Drei-Spaltiges-CSS-Layout geschrieben.
________________________
| Banner |
|________________________|
| | | |
| | | |
| | Inhalt | |
________________________
| |
| Diverse Links |
________________________
Links und rechts, in den obigen freien Feldern habe ich Navigation.
Banner, Navigation und 'Diverse Links' binde ich per SSI ein.
Meine Frage: Welchen Unterschied macht es, wenn ich die einzelnen Teile per virtual = "[Pfad/Datei]" in jede Seite absolut (../navigation/navi_left.inc) einbinde? Gemäß http://de.selfhtml.org/cgiperl/intro/ssi.htm#uebersicht sollte 'virtual für relative Pfadangaben' verwendet werden und 'file' für absolute Pfadangaben auf dem Server-Rechner. Ich benutze aber immer 'virtual'. Absolute Pfade verwende ich, da sich die Pfade innerhalb des Projektes mit Sicherheit nicht ändern werden.
Ich habe zu Testzwecken auf zwei unterschiedliche Webspaces, einer bei 1 und 1, einer bei Hosteurope, die Seiten hochgeladen und nur bei Hosteurope wurde die Seiten wunschgemäß, mit inkludierten Daten, angezeigt. Bei 1 und 1 gab es eine Fehlermeldung. Kann es an der reinen Verwendung von 'virtual' liegen?
Vielen Dank für Hinweise.
Mit freundlichen Grüßen
André
http://de.selfhtml.org/cgiperl/intro/ssi.htm#uebersicht sollte 'virtual für relative Pfadangaben' verwendet werden und 'file' für absolute Pfadangaben auf dem Server-Rechner.
Das ist Unsinn. Ich zitiere aus
http://www.htmlgoodies.com/beyond/ssi.html :
You use "file=" when the file that will be included is held within the same directory as the file that is calling for it. You can also use the file argument when the file is within a subdirectory of the directory containing the file that is calling for it. This is the one I use every time I create an SSI.
You would use the virtual argument if the file you are calling for is located in a position requiring an address starting at the server root. That's an academic way of saying the file isn't in the same directory as the page that's calling for it.
Gruß
Avalon
Hallo,
Das ist Unsinn. Ich zitiere aus
http://www.htmlgoodies.com/beyond/ssi.html :
Ist das vertrauenswürdig? Kenne diese Seite nicht.
Mit freundlichen Grüßen
André
Ist das vertrauenswürdig? Kenne diese Seite nicht.
Sie ist es. Alle gleichartigen Seiten im Netz (auch Apache - konnte leider auf die schnelle kein brauchbares Zitat finden) machen die gleiche Aussage, nur Dein Zitat der Selfhtml-Seite weicht davon ab.
Ich kannte diese Seite von Selfhtml bisher nicht und war echt überrascht, daß dort sowas steht.
Übrigens, der Gebrauch absoluter Pfade (vom Server-root aus) ist sinnvoll, insbesondere auch innerhalb der eingebundenen Navigationsdateien, ansonnsten provozierst Du nur 404-Fehler, wenn Die dateien, in die die Navigation eingebunden werden nicht auf der gleichen Ebene liegen.
Zum Schluß:
Bei meinem 1und1 Account gibt es keine Schwierigkeiten wie sie von Dir beschrieben wurden.
Gruß
Avalon
Hallo,
Übrigens, der Gebrauch absoluter Pfade (vom Server-root aus) ist sinnvoll, insbesondere auch innerhalb der eingebundenen Navigationsdateien, ansonnsten provozierst Du nur 404-Fehler, wenn Die dateien, in die die Navigation eingebunden werden nicht auf der gleichen Ebene liegen.
In der navi.inc referenziere ich ja relativ vom 'document root' (siehe unten) aus. Nur die Einbindung der inc-Datei in jede Seite erfolgt absolut.
Zum Schluß:
Bei meinem 1und1 Account gibt es keine Schwierigkeiten wie sie von Dir beschrieben wurden.
Du bist also bei 1 und 1?! Das ist gut. Dann kannst du mir bestimmt helfen, wie du deinen server root gefunden hast. Mein Projekt-Auftraggeber hat da nämlich keine Ahnung von und wir kommunizieren nur 'fernmündlich' miteinander. Kann ich nicht auch von document root absolut referenzieren? Bei Hosteurope mache ich das so:
http://www.domain.tld/neu/navigation/navi_links.inc
wird zu
/neu/navigation/navi_links.inc
Das ist doch ein relativer Pfad, oder?
Vielen Dank für deine und jede andere Hilfe.
Mit freundlichen Grüßen
André
... Kann ich nicht auch von document root absolut referenzieren? Bei Hosteurope mache ich das so:
http://www.domain.tld/neu/navigation/navi_links.inc
wird zu
/neu/navigation/navi_links.inc
Genauso funktioniert es auch bei 1und1
Das ist doch ein relativer Pfad, oder?
Nein, es ist ein absoluter Pfad. Er ist doch nicht abhängig vom Ort der Datei in der Du was einbinden willst.
Betrachte es einfach so daß im obigen Beispiel "/" die Abkürzung für
"http://www.domain.tld/" ist, also für die eigene Domain. Wenn Du im link <a href="/"> angibst landest Du doch auch dort.
Die Erklärung ist zwar nicht ganz korrekt weil es schon noch einige Unterschiede gibt, scheint mir aber im Moment ganz anschaulich zu sein.
Gruß
Avalon
Hallo,
und vielen Dank. Vielleicht kriege ich es ja doch mal hin?! ;-)
Mit freundlichen Grüßen
André
Ist das vertrauenswürdig? Kenne diese Seite nicht.
Weitere Zitate:
http://www.htmlbasix.com/includes.shtml
Auch Apache sagt dasselbe:
"Using an include file for a header and/or a footer can reduce the burden of these updates. You just have to make one footer file, and then include it into each page with the include SSI command. The include element can determine what file to include with either the file attribute, or the virtual attribute. The file attribute is a file path, relative to the current directory. That means that it cannot be an absolute file path (starting with /), nor can it contain ../ as part of that path. The virtual attribute is probably more useful, and should specify a URL relative to the document being served. It can start with a /, but must be on the same server as the file being served."
http://httpd.apache.org/docs/howto/ssi.html#includingastandardfooter
Gruß
Avalon