Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

Probleme mit ssi





Frage

Hallo alle, ich woltte unsere Firmenwebseite mal auf vordermann bringen und wollte Server side includes verwenden. Ich habe mal des Beispiel von SELFHTML verwendet:: Datei test.shtm [code] <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Dynamisches HTML mit Server Side Includes</title> </head> <body> <h1>Dynamisches HTML mit Server Side Includes</h1> <p>Diese Seite hat keine festgelegten Inhalte, sondern wird vom Server zusammengesetzt.<p> <!--#if expr="$QUERY_STRING = /test/" --> <!--#set var="param" value="Sie haben die Seite mit dem test-Parameter aufgerufen" --> <!--#echo var="param" --> <!--#else --> <!--#include virtual="test.inc" --> <!--#endif --> </body> </html> [/code] Datei test.inc [code] <p>Auf einer Meierei,<br> da lebte einst ein braves Huhn,<br> das legte, wie die Hühner tun,<br> an jedem Tag ein Ei.<br> Und kakelte, mirakelte, spektakelte,<br> als obs ein Wunder sei.</p> [/code] Rufe ich nun die test.shtm auf bekomme ich folgende Seite: [url]http://www.plasticrecycling.de/Test/test.shtm[/url] Die Seite wird von 1&1 gehostet und hat SSI unterstützung. Der Befehl [code]<!--#echo var="DATE_LOCAL"-->[quote] liefert auch einen Wert zurück. Somit gehe ich davon aus, dass SSI wirklich aktivert ist. Woran kann es liegen, dass die eigebundene Seite nicht läd und nur diese Fehlermeldung kommt? Gruss

Antwort 1 von Cloud_X@work

*nochmal hoch schieb...*

Antwort 2 von Björn

Ich habe keine Ahnung von SSI. Aber der Fehler scheint in der Includezeile zu sein, denn er erscheint nicht, wenn man die Seite mit dem Testparameter aufruft:
http://www.plasticrecycling.de/Test/test.shtm?test

Antwort 3 von Rangoo

Hi!

Die wahrscheinlichsten Möglichkeiten sind:
1. Die Datei test.inc existiert im Verzeichnis Test nicht.
2. Die Datei hat großgeschriebene Buchstaben im Namen.
3. Die Datei wurde versehentlich als test.inc.html o.ä. gespeichert.
4. Für die Datei bestehen keinerlei Leserechte.
5. Der Server unterstützt keine Dateien mit unbekannten Endungen.
6. Der Server unterstützt den Include-Befehl nicht.

Such dir was aus. ;-)

Antwort 4 von derpfleger

Weitere mögliche Fehlerquellen (Zitate aus der SSI-FAQ von 1und1):
Zitat:
Die Ausführung von SSI-Scripten ist ab dem 1&1 Home 5.0 möglich.

Zitat:
Damit die Befehle ausgeführt werden können, muss die Endung der Dateien .shtml lauten

Zitat:
Hierbei sind die fehlenden Leerzeichen zwingend vorgeschrieben, um den Code von normalen HTML-Kommentaren zu unterscheiden.


Hab es gerade auf meiner 1und1-Domain ausprobiert: es scheint so, als ob 1und1 nicht mit der Dateiendung .inc klarkommt. Benenne ich die includierte Datei .txt, so wird die if/else-Anweisung korrekt befolgt.

Gruß derpfleger

Antwort 5 von MixMax

gerade mal bei mir getestet:

virtual="test.inc"

bezieht sich NICHT auf die Datei
Webroot/test/test.inc

sondern auf
Webroot/test.inc

Antwort 6 von derpfleger

@ MixMax: erscheint mir nicht logisch, kann ich auch nicht bei mir nachvollziehen. Habs so getestet ohne Erfolg.

<!--#if expr="$QUERY_STRING = /test/" -->
<!--#set var="param" value="Sie haben die Seite mit dem test-Parameter aufgerufen" -->
<!--#echo var="param" -->
<!--#else -->
<!--#include virtual="test.txt" -->
<!--#endif -->

<!--#if expr="$QUERY_STRING = /test/" -->
<!--#include virtual="test.txt" -->
<!--#else -->
<!--#set var="param" value="Sie haben die Seite mit dem test-Parameter aufgerufen" -->
<!--#echo var="param" -->
<!--#endif -->


So klappt es problemlos beim 1und1-Account. Es scheint also primär ein Problem der Endung .inc zu sein.

Gruß derpfleger

Antwort 7 von Cloud_X

Danke Euch erstmal allen!
Werde es mal mit ner anderen Endung teste

Antwort 8 von Cloud_X

Habe evtl. den Fehler gefunden.

Kann es aber noch nicht testen.

Zu lösen ist das ganze mit .htaccess-Direktiven


# damit der Webserver ".inc"-Dateien ausgibt
# (aus Sicherheitsgründen bei uns deaktiviert)
#
<FilesMatch "\.inc$">
order deny,allow
allow from all
</FilesMatch>


Quelle: http://faq.1und1.com/access/dsl/homepage_technik/_htaccess/2.html

Antwort 9 von derpfleger

Das war ein guter Hinweis, so funktioniert es auch mit
.inc
- Dateien, habe es gerade ausprobiert. Einfach die von dir genannten Zeilen als
.htaccess
-Datei in den Ordner der SSI-Funktion haben soll kopiert und schon funzt das mit der Endung
 .inc
.

Danke für den Tip. Das habe ich bei meiner Suche auf der FAQ-Seite bei 1und1 übersehen.
Aber jetzt wo du mich darauf gestossen hast: ich hatte immer nur nach SSI gesucht, nie nach .inc (als Suchbegriff). Sucht man auf der FAQ-Seite nach .inc landet man hier: http://hilfe-center.1und1.de/hosting/scripte_datenbanken/5.html Da hätte ich mal drauf kommen müssen...

Gruß derpfleger

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: