Ich versuche, Expires-Header zu den HTTP-Antworten der Site hinzuzufügen, an der ich arbeite. Die einzige Möglichkeit für mich, den Apache 1.3-Server zu steuern, besteht darin, meine .htaccess-Datei zu bearbeiten. Ich habe versucht, Code wie den folgenden hinzuzufügen, um die Expires-Header zu aktivieren:
<IfModule mod_expires.c>
ExpiresActive on
ExpiresDefault "access plus 1 hour"
</IfModule>
Dies führt jedoch zu einem internen Serverfehler mit der folgenden Fehlermeldung im Protokoll:
ExpiresActive ist hier nicht erlaubt
Ich kann wahrscheinlich keine alternativen Methoden zur Cache-Steuerung verwenden, da mod_headers nicht aktiviert ist. Gibt es eine Möglichkeit, den Expires-Header mithilfe von mod_expires über einige Befehle in der .htaccess-Datei zu aktivieren?
Update
Ich erinnere mich, dass ich irgendwo gelesen habe, dass die Override-Einstellungen in httpd.conf möglicherweise etwas damit zu tun haben. Gibt es eine Möglichkeit zu bestätigen, dass dies tatsächlich das Problem ist? Wenn ja, gibt es eine Problemumgehung, um die Caching-Header für meine Website zu steuern?
quelle
Das Hinzufügen von "AllowOverride-Indizes" zu Apaches conf für den Ordner, in dem Sie Zugriff haben, hat für mich funktioniert. Die Lösung finden Sie hier http://speedforce.org/2009/01/were-back/
quelle
auf RHEL in /etc/httpd/conf/httpd.conf
AllowOverride ändern Keine
zu AllowOverride FileInfo Options Indizes
quelle
In meinem Fall ist mod_expires nicht verfügbar, aber headers_module funktioniert gut (unter Apache 2.0):
quelle
Ich hatte das gleiche Problem unter Apache 2.4 / CentOS 7. Die Syntax für die Konfigurationsdatei lautet jetzt: "AllowOverride Options = Indexes".
quelle