SSI lokal testen?

K

kurare

Aktives Mitglied
Thread Starter
Dabei seit
06.06.2003
Beiträge
1.172
Reaktionspunkte
0
Hallo,

ich habe schon die Suche bemüht, sowohl hier auf macuser.de als auch andere Suchmaschinen. Leider bin ich nicht wirklich zufrieden mit den Ergebnissen.

Hier gibt es doch bestimmt etliche Webdesigner, Homepagebastler, etc. ;) Da muss doch der eine oder andere dabei sein, der sich mit SSI auskennt und mir sagen kann wie ich Webseiten mit SSI auf meinem Rechner testen (bzw. sehen) kann. Ich kriege SSI einfach nicht zu laufen. Vielleicht geht es auch mit einer genauen Anleitung, so Schritt für Schritt? :D

:confused:
 
Ja ...

@ all: ... das würde mich auch interessieren.

@ kurare: Schritt 1: Dein Apache Web Server ist funktionsbereit?

Salü,
mactrisha.
 
Re: Ja ...

Original geschrieben von mactrisha
@ kurare: Schritt 1: Dein Apache Web Server ist funktionsbereit?

Hi,

ja der Apache Web Server ist (denke ich) schon funktionsbereit. Ich bekomme jedenfalls unter //localhost/ gesagt:
Es klappt! Der Apache Web-Server ist auf dieser Web-Site installiert!
 
Re: Re: SSI lokal testen?

Kann mir keiner helfen?
025.gif
 
Es muss doch Webdesigner unter Euch geben, die mit SSI arbeiten? Wie kann ich das auf meinem PB testen?
:confused:
 
Hi kurare,

ich habe mirkot gefragt, von dem ich weiß, dass er SSI am Laufen hat, und er hat mir diese Antwort gemailt:

Hallo,

ich werde versuchen dir zu helfen wo ich kann.

# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/Library/Webserver/Documents">

Options Indexes FollowSymLinks Multiviews + Includes

Damit gibst du Apache das richtige Verzeichnis vor, wo auf SSI geparst _
wird. Options muss auf +Includes ergänzt werden.

Ist der falsche DocumentRoot ausgewählt, dann gehts nicht.

Also wichtig ist also die Pfadangabe in der httpd.conf. Dort muss dein _
Pfad hin (wohl das Site-Verzeichnis).

Also bis bei mir alles so lief SSI, PHP usw. habe ich so einige Haare _
gelassen, aber jetzt läuft es einfach super.

Hoffe ich konnte dir helfen.

Gruß Mirko

Ich hoffe, es hilft uns, ich muss es selbst erst probieren. Melde dich wieder mal, wenn du es geschafft hast.

Salü,
mactrisha.
 
Damit SSI bei einer Standardkonfiguration mit Apache läuft, sollten die Dateien die Endung SHTML haben ...

Viel Erfolg
 
Original geschrieben von mactrisha
Ich hoffe, es hilft uns, ich muss es selbst erst probieren. Melde dich wieder mal, wenn du es geschafft hast.

Salü,
mactrisha.
&nbsp;

Schon mal danke für die Hilfe. Ich werde das demnächst mal ausprobieren. Melde mich dann wieder.

P.S.: Wäre es nicht ganz einfach wenn uns ein Macuser, bei dem alles bei apache funktioniert, die httpd.conf zur Verfügung stellt und das wir dann nur eventuelle Pfade ändern müssten? :confused:

@PeterDickten: Das ist leider nicht das Problem. ;)
Ich habe schon SSI-Seiten fertig gemacht, die online auch ohne Probleme laufen (leider ein M$-Server *motz*), aber ich würde die SSI-Dateien gerne vorher auf meinem PB testen.
 
hallo zusammen

es geht lokal - soviel ist sicher.
hab jetzt keine Zeit und werde später mal nachsehen, falls noch Bedarf besteht.

Bitte posten, damit ich ne Email bekomme und daran erinnert werde.
 
Original geschrieben von maceis
hallo zusammen

es geht lokal - soviel ist sicher.
hab jetzt keine Zeit und werde später mal nachsehen, falls noch Bedarf besteht.

Bitte posten, damit ich ne Email bekomme und daran erinnert werde.
&nbsp;

Ja! bitte! :D Es besteht noch immer Bedarf. clap
 
also:

Folgende Schritte führen zum Ziel:
  1. Aktivieren von SSI durch Entfernen der Kommentare bei den Zeilen:
    #AddType text/html .shtml
    #AddHandler server-parsed .shtml

    Dadurch können Dateien mit der Endung .shtml SSI ausführen
  2. Zu dem Verzeichnis, das als DocumentRoot eingestellt ist (hier /www)
    muss es einen Eintrag geben, der so aussieht:
    <Directory "/www">
    Options Indexes FollowSymLinks MultiViews Includes

    ... (mögliche weitere Directiven)
    </Directory>
  3. Die Scriptfiles sind gültige Skripte und als ausführbare Datei eingestellt
  4. Die Einbindung muss in einer shtml-Datei erfolgen und zwar mit korrekter Syntax und Pfadangabe
    [/list=1]

    I d. R. gibt es unter den alias Direktiven einen Eintrag, der die Einbindung erleichtert.
    Wenn der Pfad ausgehend von DocumentRoot angegeben wird, muss man mit "virtual" arbeiten.

    Wenn diese Schritte beherzigt werden funktioniert es.
    Habs eben noch getestet.

    Viel Erfolg!
 
Hi

Aktivieren von SSI durch Entfernen der Kommentare bei den Zeilen:
#AddType text/html .shtml
#AddHandler server-parsed .shtml
Dadurch können Dateien mit der Endung .shtml SSI ausführen


Man kann auch direkt die Extensions .htm und.html parsen

In der httpd.conf sollte folgendes stehen

LoadModule includes_module libexec/httpd/mod_include.so
AddModule mod_include.c
<Directory "/Library/WebServer/Documents">

#
# This may also be "None", "All", or any combination of "Indexes",
# "Includes", "FollowSymLinks", "ExecCGI", or "MultiViews".
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
#Options FollowSymLinks Indexes MultiViews
Options All
#
# This controls which options the .htaccess files in directories can
# override. Can also be "All", or any combination of "Options", "FileInfo",
# "AuthConfig", and "Limit"
#
AllowOverride All

#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>

# To use server-parsed HTML files
#
#AddType text/html .shtml
#AddHandler server-parsed .shtml
AddHandler server-parsed htm
AddHandler server-parsed html
Options ExecCGI FollowSymLinks Includes IncludesNOEXEC Indexes MultiViews SymLinksIfOwnerMatch

Damit sollte es gehen

HTH

W
 
hallo Wullion,

Man kann auch direkt die Extensions .htm und.html parsen
Das ist richtig, belastet aber den Server unnötig und ist bei wohl allen Providern nicht so eingestellt.
Darum würde ich das auch zuHause nicht machen.
Nützt ja nix, wenns daheim geht und nach dem Upload nimmer.

btw:
MultiViews haste jetzt abgeschaltet.
Aber das wird ohnehin fast nur auf mehrsprachigen Sites eingesetzt.
Ein bisschen aufpassen muss man noch, wenn man DocumentRoot geändert hat, aber das dürfte jedem klar sein.
 
Vielen Dank an alle die Tipps gegeben haben. Meine includes funktionieren nun. :D
clap

Aber noch mal ne andere Frage:

Wieso wird die .css Datei auf meinem lokalen Webserver nicht geladen? Muss ich da noch andere Einstellungen machen? Wenn ich die Seiten so in Firefox oder Safari teste, klappt alles bestens... :confused:
 
Wieso wird die .css Datei auf meinem lokalen Webserver nicht geladen? Muss ich da noch andere Einstellungen machen? Wenn ich die Seiten so in

Wenn Du Sie im <head> Bereich richtg eingebunden hast, muss es auch lokal gehen.
Wie sieht dein <link> aus, und wo liegt die Datei ?
Stimmen die Berechtigungen (lesen für alle)?
 
Original geschrieben von maceis
Wenn Du Sie im <head> Bereich richtg eingebunden hast, muss es auch lokal gehen.
Wie sieht dein <link> aus, und wo liegt die Datei ?
Stimmen die Berechtigungen (lesen für alle)?
&nbsp;

Danke für Deine Antwort. :)

Der <link> sieht so aus:

<link rel="stylesheet" type="text/css" href="ifw_main.css">

Die .css befindet sich also am gleichen Ort wie die index.shtm.

Berechtigungen? Wo sehe ich das denn?
:confused:
 
ls -la /verzeichnis zeigt Dir in der ersten Spalte die Berechtigungen.

Vieleicht liefer die Beobachtung der logfiles einen Hinweis.

Im Terminal zwei Fenster öffnen (oder mit "screen" ein Fenster splitten):
Im ersten Fenster:
tail -f /var/log/httpd/access_log
Im zweiten Fenster:
tail -f /var/log/httpd/error_log
Dann kannst Du Seiten im Browser aufrufen und in den Logs live mitlesen:
Wenn im error_log eine Zeile auftaucht, die so oder ähnlich aussieht:
[Mon May 17 00:56:46 2004] [error] [client 192.168.100.10] File does not exist: /www/ifw_main.css
Dan ist die Pfadangabe im link wahrscheinlich falsch.
Probier mal "/ifw_main.css", wenn die .css direkt in DocumentRoot (also im obersten Verzeichnis) liegt, bzw. leg sie dort hin.
 
es geht nich

maceis schrieb:
also:

Folgende Schritte führen zum Ziel:
  1. Aktivieren von SSI durch Entfernen der Kommentare bei den Zeilen:
    #AddType text/html .shtml
    #AddHandler server-parsed .shtml

    Dadurch können Dateien mit der Endung .shtml SSI ausführen
  2. Zu dem Verzeichnis, das als DocumentRoot eingestellt ist (hier /www)
    muss es einen Eintrag geben, der so aussieht:
    <Directory "/www">
    Options Indexes FollowSymLinks MultiViews Includes

    ... (mögliche weitere Directiven)
    </Directory>
  3. Die Scriptfiles sind gültige Skripte und als ausführbare Datei eingestellt
  4. Die Einbindung muss in einer shtml-Datei erfolgen und zwar mit korrekter Syntax und Pfadangabe

I d. R. gibt es unter den alias Direktiven einen Eintrag, der die Einbindung erleichtert.
Wenn der Pfad ausgehend von DocumentRoot angegeben wird, muss man mit "virtual" arbeiten.

Wenn diese Schritte beherzigt werden funktioniert es.
Habs eben noch getestet.

Viel Erfolg!

Hallo,

also bei "<Directory "/www">" steht "<Directory "/Library/WebServer/Documents">"

Muß ich das ändern?

Ich hab die WebSite, da ich es auf dem Mac nicht hin bekommen habe, auf der Dose getestet. Klappt alles. Zurück am Mac werden die includes nicht ausgeführt.

Muß ich noch was ändern???

Ich rauf mir bald die Haare aus. Muß doch möglich sein.
Also bitte den entscheidenen Hinweis für mich.

Danke.
Erika
 
Erika schrieb:
Hallo,

also bei "<Directory "/www">" steht "<Directory "/Library/WebServer/Documents">"

Muß ich das ändern?...
Nein. /www ist nur ein Beispiel.
Erika schrieb:
Ich hab die WebSite, da ich es auf dem Mac nicht hin bekommen habe, auf der Dose getestet. Klappt alles. Zurück am Mac werden die includes nicht ausgeführt.

Muß ich noch was ändern???
...
afair nur das, was ich noch angegeben hatte.
Wenn Du normale Webseiten aufrufen kannst, ist die Document-Root richtig gesetzt.

Um die Ursache Deines Problems zu finden, wäre ein Blick in die Logfiles hilfreich.
Also: Terminal auf, zwei Fenster öffnen
In einem eingeben:
tail -f /var/log/httpd/access_log
im anderen:
tail -f /var/log/httpd/error_log.
In jedem Fenter unten eine Trennzeile eingeben
------------------------
Dann Browser öffnen und auf die entprechende Seite zugreifen.
Den Inhalt der beiden TerminalFenster kopieren und hier posten (am besten als "Code").
Dann sehen wir weiter.
 
Zurück
Oben Unten