저는 Apache와 함께 Debian 8을 사용하고 있습니다. 내 것은 /etc/apache2/sites-available/000-default.conf
아래와 같습니다.
Apache에게 어떤 구성 파일을 어떻게 구성하는지 물어봐도 될까요?/var/log/apache2/other_vhosts_access.log
다음의 트래픽을 기록하지 않음http://www.mysite2.org또는에서http://www.mysite3.org/subdir/?나머지 모든 내용은 평소와 같이 동일한 파일에 기록되어야 합니다 other_vhosts_access.log
.
<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
답변1
각 가상 호스트에는 오류 로그와 정의된 일반 로그가 있어야 하며, 이를 사용할 수 없는 경우 기본 로그가 사용됩니다. 또한 도메인 중 하나에 속하지 않는 모든 트래픽을 포착하는 기본 가상 호스트를 만드는 것이 좋습니다( 귀하의 웹 사이트를 가리키는 DNS 사용자를 변경하십시오)). 이는 사기성 콘텐츠이므로 검색 결과에 부정적인 결과를 초래할 수 있습니다.
따라서 모든 가상 호스트에서;
ErrorLog "logs/web1-error_log"
CustomLog "logs/web1-access_log" common
ErrorLog "logs/web2-error_log"
CustomLog "logs/web2-access_log" common
고쳐 쓰다:
특정 디렉터리를 로깅하지 않는 부분을 보지 못했습니다. 이는 환경 변수를 설정하여 달성할 수 있습니다.
답변2
답변을 주신 @MikeJonesey에게 감사드립니다. 자세한 내용을 추가하려면 다음을 입력하세요 /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>