Ich versuche, SSI dazu zu bringen, unter Debian mit Apache zu arbeiten, aber die .shtml
Dateien werden nicht analysiert. Aus einer PHP-Datei mit phpinfo()
kann ich sehen, dass im Abschnitt geladene Module Folgendes angezeigt wird:
mod_mime_xattr mod_mime mod_mime_magic
In habe /etc/apache2/mods-enabled/mime.conf
ich (unter anderem):
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
In /etc/apache2/sites-enabled/domain.com.conf
(für den fraglichen virtuellen Host) habe ich:
<Directory /home/username/public_html>
Options +Includes
allow from all
AllowOverride All
</Directory>
und zum guten Teil habe ich auch folgendes hinzugefügt:
<Directory />
Options +Includes
</directory>
In der Benutzerdatei habe .htaccess
ich versucht hinzuzufügen:
Options +Includes
AddType text/html shtml
AddHandler server-parsed shtml
Nichts scheint zu funktionieren. Wie kann ich das überhaupt debuggen?
Bearbeiten:
Hier ist die Ausgabe von ls /etc/apache2/mods-enabled/
für den Fall, dass dies hilft
actions.conf dav_svn.load proxy_balancer.load
actions.load deflate.conf proxy.conf
alias.conf deflate.load proxy_connect.load
alias.load dir.conf proxy_http.load
auth_basic.load dir.load proxy.load
auth_digest.load env.load python.load
authn_file.load fcgid.conf reqtimeout.conf
authz_default.load fcgid.load reqtimeout.load
authz_groupfile.load mime.conf rewrite.load
authz_host.load mime.load ruby.load
authz_user.load mime_magic.conf setenvif.conf
autoindex.conf mime_magic.load setenvif.load
autoindex.load mime-xattr.load ssl.conf
cgi.load negotiation.conf ssl.load
dav_fs.conf negotiation.load status.conf
dav_fs.load php5.conf status.load
dav.load php5.load suexec.load
dav_svn.conf proxy_balancer.conf
.shtml
Seite besuchen, sehen Sie etwas im Apache-Fehlerprotokoll?[error] an unknown filter was not added: includes
AddOutputFilter INCLUDES .shtml
beseitigt den Fehler, löst das Problem jedoch immer noch nichtAntworten:
Damit serverseitige Includes funktionieren, muss das
include
Modul auch geladen werden. Sie können dies tun, indem Sie Folgendes als root ausführen:Oder führen Sie Folgendes aus:
Starten Sie dann Apache neu.
Beachten Sie, dass Sie dies tun würden , wenn Sie SSI zu
.shtml
Dateien von hinzufügen.htaccess
würdenAddOutputFilter INCLUDES .shtml
. Oder ersetzen.shtml
Sie den Dateityp, den Sie vom Server analysieren möchten.Die aktuelle Debian-Konfigurationsdatei
/etc/apache2/mods-available/mime.conf
enthält einen Fehler, indem sie Folgendes hinzufügt:ohne vorher zu prüfen, ob
mod_include.c
geladen wurde. Um dies zu umgehen, können Sie diese Zeilen ändern in:Die
<IfModule>
Tags können verschachtelt werden. Dadurch werden die Fehlermeldungen entfernt, die bei einemmod_include.c
nicht geladenen Ereignis auftreten .quelle