Es gibt einen dritten Weg, dies zu verhindern browserconfig.xml
Ihre Protokolldateien mit 404-Fehlern gefüllt werden. Sie können einen Nullwert (444) vom Server zurückgeben und die Protokollierung nur für diesen Speicherort deaktivieren. Dies ist relevant, da favicon.ico dasselbe tut, indem es die Meta-Head-Tags und den Browser, der sie aufruft, ignoriert (wobei auch ein 404 generiert wird). Das Problem ist größer als nur diese eine unerwünschte Datei.
Zu Ihrer speziellen Frage, wie Sie 404-Fehler in Ihren Protokollen in browser.xml verhindern können - für NGINX können Sie eine neue Datei in /etc/nginx/snippets/
und dann #include
diese Datei in Ihrer /etc/nginx/sites-available/example.org
Datei innerhalb des Serverblocks erstellen .
Beispiel: /etc/nginx/snippets/block-known-errors.conf
hat folgenden Inhalt:
location ~* /(favicon.ico|browserconfig.xml)$
{ access_log off; log_not_found off; return 444; }
Dann würden Sie in Ihrer Konfiguration bei /etc/nginx/sites-available/example.org
hinzufügen:
include /etc/nginx/snippets/block-known-errors.conf;
Beachten Sie, dass in der Standortspezifikation in NGINX ein regulärer Ausdruck verwendet wird und die Groß- und Kleinschreibung nicht berücksichtigt wird . Und weil es ein location
ist, muss es innerhalb der server
Spezifikation liegen.
In der Praxis verschachteln wir unsere Includes tatsächlich im /etc/nginx/snippets/
Ordner und haben ein globales Include und ein anderes Include für bestimmte Sites, abhängig von den Sicherheits- / Technologieanforderungen. Auf diese Weise können unsere Endpunkte ein globales Problem fast sofort beheben, indem sie eine Datei hinzufügen oder eine vorhandene Datei bearbeiten, um unsere Protokolle zu verwalten.
Mit OSSEC und einem ELK-Stack können Sie nur so viel Cruft durchschauen.
Ich bin sicher, dass mod_rewrite in Apache dies auch tun könnte.