Christoph Schnauß: [:::Ausführen von SSI im Perl-Skript zulassen:::]

Beitrag lesen

hallo,

Hängt, wie Matti schon schrieb, von der Apache-Version ab.
Nein.
Doch.

Du wirst meinen Apache 2.0.54 sicher für einen Apache 2 halten. SSI darf er, und cgi kann er auch.

Und genau das ist im Apache 2.0 bei entsprechender Konfiguration eben anders: der Output eines Scripts kann durch einen weiteren Interpreter, z.B. SSI, gejagt werden.

Kleines Beispiel eines Perl-Scripts:

  
print "Content-Type: text/html\n\n";  
print "<!DOCTYPE HTML \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";  
print "<html><head>\n";  
print "<title>SSI-Test</title>\n";  
print "</head>\n";  
  
print "<body>\n";  
  
print "<!--#config timefmt=\"%d.%m.%Y, %H.%M\" --><!--#echo var=\"DATE_LOCAL\" -->\n";  
  
print "</body></html>\n";  
  
exit;  

Da passiert scheinbar gar nix, leere Anzeige. Kein Fehler im log. Im Quelltext erhält mein Browser (egal, welcher) aber die SSI-Anweisung.

Nehme ich jetzt aber

  
  <!--#config timefmt="%d.%m.%Y, %H.%M" --><!--#echo var="DATE_LOCAL" -->  

als Inhalt einer Datei "test.shtml" und rufe sie auf, kriege ich freundlicherweise Datum und aktuelle Uhrzeit, wie gewünscht. Ich kann natürlich auch noch ein "#exec cgi" anhängen, macht er auch mit, siehe http://de.selfhtml.org/servercgi/server/ssi.htm#variable

Grüße aus Berlin

Christoph S.