
Ich habe ein Debian 8 mit Apache. Meins /etc/apache2/sites-available/000-default.conf
ist wie folgt.
Wie und in welcher Konfigurationsdatei kann ich Apache fragenum den Verkehr nicht zu protokollieren, /var/log/apache2/other_vhosts_access.log
der vonhttp://www.mysite2.orgoder vonhttp://www.mysite3.org/subdir/?other_vhosts_access.log
Der gesamte Rest sollte wie üblich in derselben Datei protokolliert werden .
<VirtualHost *:80>
ServerName www.mysite1.org
DocumentRoot /home/www/mysite1
<Directory />
Options FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.mysite2.org
DocumentRoot /home/www/mysite2
<Directory />
...
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.mysite3.org
DocumentRoot /home/www/mysite3
<Directory />
...
</Directory>
</VirtualHost>
+ 10 other virtual hosts
Antwort1
Jeder virtuelle Host benötigt eine Definition des Fehlerprotokolls und des allgemeinen Protokolls. Ohne diese wird das Standardprotokoll verwendet. Beachten Sie auch, dass es sich lohnt, einen Standard-Vhost zu erstellen, der den gesamten Datenverkehr abfängt, der nicht für eine Ihrer Domänen bestimmt ist (Personen, die ihre DNS auf Ihre Website richten). Dies kann schlechte SERP-Konsequenzen haben, da es sich um doppelten Inhalt handelt.
also, in jedem vhost;
ErrorLog "logs/web1-error_log"
CustomLog "logs/web1-access_log" common
ErrorLog "logs/web2-error_log"
CustomLog "logs/web2-access_log" common
AKTUALISIEREN:
habe den Teil zum Nichtprotokollieren eines bestimmten Verzeichnisses nicht gesehen. Dies ließe sich durch das Festlegen einer Umgebungsvariable erreichen.
Antwort2
Vielen Dank an @MikeJonesey für seine Antwort. Um weitere Details hinzuzufügen, hier ist die Lösung, die Sie eingeben müssen /etc/apache2/sites-available/000-default.conf
:
<VirtualHost *:80>
ServerName www.mysite3.org
DocumentRoot /home/www/mysite3
<Directory />
...
</Directory>
SetEnvIf Request_URI "^/subdir(.*)$" dontlog
CustomLog ${APACHE_LOG_DIR}/other_vhosts_access.log vhost_combined env=!dontlog
</VirtualHost>